Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

javaのファイル読み込みについて

ファイル読み込みについて質問です。
現在大学の課題でファイル読み込みで躓いてしまいました。ファイル読み込みの際、javaプログラムがあるディレクトリに読み込ませたいファイルを入れると読み込むことができるのですが、ディレクトリ外にあるファイルを読み込むことができません。どのようにすればディレクトリ外にあるファイルを読み込むことができるでしょうか。下にソースコードを貼っておきます。

import java.io.*;

/**
 * バッファリングしてテキストファイルを読み込むサンプルプログラム
 * @author Hidekazu Suzuki
 * @version 1.0, 16 Jun 2014
 */
public class ExampleBufferedReader {

    /**
     * @param args 読み込むテキストファイル名
     */
    public static void main(String[] args) {
        FileReader fr = null;
        BufferedReader br = null;
        try {
            fr = new FileReader(args[0]);    // ファイル入力文字ストリーム
            br = new BufferedReader(fr);    // 入力用バッファ
            String text = "";
            String str;
            // ファイルからまとめて入力用バッファ読み込み,入力用バッファから1行読み込み
            while ((str = br.readLine()) != null)
                text += str + "\r\n";    // 改行コードを付け加える
            
            System.out.println(args[0] + "の内容:");
            System.out.println(text);
        } catch (FileNotFoundException e) {
            System.out.println("ファイル" + args[0] + "が見つかりません.");
            System.exit(1);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            /*
             * BufferedReaderストリームをクローズ
             * (連結されているFileReaderストリームも同時にクローズされる)
             */
            if (br != null) {
                try {
                    br.close();
                } catch (IOException e) {}
            }
        }
    }
}

1

回答

5844

閲覧

1件の回答

評価

0

それはJavaというよりは、OS(WindowsやLinux)の知識だね。
本来「javaプログラムがあるディレクトリの、対象ファイル」と指定する。
「ディレクトリ+ファイル名」を「絶対パス」と言うので、検索して勉強してみよう。
その途中で「相対パス」というのが出てきて、なんでディレクトリの指定を省略できるのかも分かるだろう。

回答する

ログインしていません。

ログインしなくても回答はできますが、ログインすると、質問・回答の管理、更新があった場合のメールでの通知を受けることができます。 アカウントをお持ちでない方は会員登録を行ってください。

ユーザ名匿名