0

ここで誰かが私を正しい方向に向けることができますか。ファイルを読み取り、そのファイル内のデータを表示するメソッドがあります。1行しか表示できません。見落としているのは単純なことだとわかっていますが、私の脳はどろどろで、もっと大きな穴を掘り続けています。

public static String readFile(String file) {
    String data = "";
    if (!new java.io.File(file).exists()) {
        return data;
    }
    File f = new File(file);
    FileInputStream fStream = null;
    BufferedInputStream bStream = null;
    BufferedReader bReader = null;
    StringBuffer buff = new StringBuffer();

    try {
        fStream = new FileInputStream(f);
        bStream = new BufferedInputStream(fStream);
        bReader = new BufferedReader(new InputStreamReader(bStream));
        String line = "";

        while (bStream.available() != 0) {
            line = bReader.readLine();

            if (line.length() > 0) {
                if (line.contains("<br/>")) {
                    line = line.replaceAll("<br/>", " ");
                    String tempLine = "";
                    while ((tempLine.trim().length() < 1)
                            && bStream.available() != 0) {
                        tempLine = bReader.readLine();
                    }
                    line = line + tempLine;
                }
                buff.append(line + "\n");

            }
        }

        fStream.close();
        bStream.close();
        bReader.close();

    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return buff.toString();

}
4

2 に答える 2

1

Guavaでこれを行うのはどうですか:

http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/io/Files.html

List<String> lines = Files.readLines("myFile.txt", Charset.forName("UTF-8"));
System.out.println(lines);

行などを連結するには、まだ少し作業を行う必要があり<br>ます...

于 2013-10-16T00:49:22.410 に答える