ファイルを読み込もうとしています(拡張子は関係ありません)。後で書きますが、出力ファイルは入力ファイルとは異なります。あなたは私に言わせればバイトに変換し、このフォームからの書き込みなぜ、ファイルを読み書きするときに出力が変更されます
OutputStream outputStream = null;
FileReader fr = new FileReader("rute\\inputfile.PNG");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line= br.readLine()) != null) {
content += line;
}
byte[] toBytes= content.getBytes();
InputStream inputStream = new ByteArrayInputStream(toBytes);
try {
outputStream = new FileOutputStream(new File("rute\\output.PNG"));
int read = 0;
byte[] bytes = new byte[1024];
while ((read = inputStream.read(bytes)) != -1) {
outputStream.write(bytes, 0, read);
}
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
inputStream.close();
私はデータで何かを行う必要があるためである、と私は、この変換を必要とする:
私のコードは次のです。あなたは、私が文字列にイメージをロード傾けることを教えている場合 は、はい、私はそのような何か行うことができます。
File fil = ~~~~;
FileInputStream fis = null;
fis = new FileInputStream(fil);
byte[] bytess = IOUtils.toByteArray(fis);
をしかし、私は、私は大きなファイルをロードしたい場合ので、この方法でそれを行うたくない、ヒープサイズこれは十分ではありません。これは、「1行の行」の読み取りによって解決できます。あなたの答え
どのような質問ですか? –
ファイルを変更せずにファイルを読み書きする方法、または出力ファイルが入力ファイルと同じでない問題/理由を教えてください。 –