-1

「Java でファイルを文字列に変換し、その文字列をファイルに戻すにはどうすればよいですか?」という質問があります。

私のコード:

public static void main(String[]args) throws IOException{
    String fff = fileToString("Book.xlsx");
    byte[] bytes = fff.getBytes();

    File someFile = new File("Book2.xlsx");
    FileOutputStream fos = new FileOutputStream(someFile);
    fos.write(bytes);
    fos.flush();
    fos.close();
}

public static String fileToString(String file) {
    String result = null;
    DataInputStream in = null;

    try {
        File f = new File(file);
        byte[] buffer = new byte[(int) f.length()];
        in = new DataInputStream(new FileInputStream(f));
        in.readFully(buffer);
        result = new String(buffer);
    } catch (IOException e) {
        throw new RuntimeException("IO problem in fileToString", e);
    } finally {
        try {
            in.close();
        } catch (IOException e) { /* ignore it */
        }
    }
    return result;
}

Book1.xlsx文字列に戻って保存するにはどうすればよいですbook2.xlsxか?? Book2.xlsx無効です....

4

1 に答える 1

2

いくつかの選択肢がありますが、WriterおよびReaderインターフェイスを使用すると、これを簡単に行うことができます。

a を使用して、次のように aFileWriterに書き込みます。StringFile

File destination = new File("...");
String stringToWrite = "foo";
Writer writer = new FileWriter(destination);
writer.write(stringToWrite);
writer.close();

次に、FileReaderを使用して読み戻します。

StringBuilder appendable = new StringBuilder();
Reader reader = new FileReader(destination);
reader.read(appendable);
reader.close();

String readString = appendable.toString();
于 2012-10-08T14:49:33.757 に答える