- - PR -
FileOutputStreamを使ったファイル作成について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-12-02 13:08
いつもお世話になっております。 オラ忍者鳥取県(・_・。)(涙)
早速ですが、表題の件に関して分らないことがあります。どなたかお分かりの方が いらしましたら、どうかご助言賜りたく存じます。宜しくお願いします。m(_ _)mペコリ 質問の内容ですが、 FileOutputStream fos = new FileOutputStream("../sql/" + "a.sql"); ・・・@ @のような感じで生成されたファイルを現在プログラムを実行中の場所から ひとつ上のフォルダ上にあるsqlというフォルダ内に格納したいのですが、 上記のように記述しても ..¥¥a.sql (指定されたパスが見つかりません。) とエラーがでて思い通りの動作を行わせることができませんでした。 ちなみに ("../sql/" + "a.sql") → ("..¥¥sql¥¥" + "a.sql") の結果も同じでした・・・。私の思っているような処理を行わせたい場合 どのような記述をするとよいのでしょうか? | ||||||||
|
投稿日時: 2003-12-02 13:26
mkdir ..\sql
とやったらどうなりますか? | ||||||||
|
投稿日時: 2003-12-02 13:31
確認したわけではないですが、多分文法的には問題ないと思います(試験に合格した忍者鳥取県さんが文法を間違えるなんて、あろうはずがないでしょう...きっと)。
単にディレクトリが存在しないだけのような気がします。 まず、カレントディレクトリをチェックしてください。
たとえば、カレントディレクトリがc:\java\workである場合、c\java\sqlというディレクトリは存在しますか? もし存在するなら、保存できるはずです。 保存できない場合、File#getAbsolute()で絶対パスに変換して、実行してみてください。 問題点を絞り込むことができないので、ここまでのことを試した上で、その結果等を投稿してください。 | ||||||||
|
投稿日時: 2003-12-02 13:31
Keisukeさん、かずくんさん早速の返答ありがとうございます。
さきほどのに記述していませんでしたが、sqlフォルダ自体は存在しています。 言葉たらずでごめんなさい。m(_ _)m ペコリンコ 追伸:試験合格おぼえてくれてたんですね・・・w (・_・;)ふぉふぉふぉ [ メッセージ編集済み 編集者: 忍者鳥取県 編集日時 2003-12-02 13:37 ] | ||||||||
|
投稿日時: 2003-12-02 13:35
忍者さんども
セパレータは、ハードOSに依存するので File.separator とするといいですよ | ||||||||
|
投稿日時: 2003-12-02 13:48
おっと失礼しました。
パーミッションの問題かと思いましたが、この場合は java.io.FileNotFoundException: ..\sql\a.sql (アクセスが拒否されました。) となるようです。 | ||||||||
|
投稿日時: 2003-12-02 14:25
一度、これでカレントディレクトリがどこになっているのか調べた方がいいかも知れません。
| ||||||||
|
投稿日時: 2003-12-02 14:48
架空兎さんありがとうございました。私の単純ミスでした・・・・。 架空兎さんが教えてくれたコマンドを実行して、自分のいるディレクトリを 勘違いしていることに気づきました・・・。 こういったコマンドがあったのですね、勉強になりました。 みなさま、ほんとにお騒がせいたしましてごめんなさい。 & ありがとうございました。 |
1