我遇到了这个错误:
我的代码是:
解决方法是以 UTF-8 格式读写文件。io.MalformedByteSequenceException: 2 字节 UTF-8 序列的第 2 个字节无效
我的代码是:
InputStream input = null;
OutputStream output = null;
OutputStreamWriter bufferedWriter = new OutputStreamWriter( output, "UTF8");
input = new URL(url).openStream();
output = new FileOutputStream("DirectionResponse.xml");
byte[] buffer = new byte[1024];
for (int length = 0; (length = input.read(buffer)) > 0;) {
output.write(buffer, 0, length);
}
BufferedReader br = new BufferedReader(new FileReader("DirectionResponse.xml" ));
FileWriter fstream = new FileWriter("ppre_DirectionResponse.xml");
BufferedWriter out = new BufferedWriter(fstream);
我正在读取一个URL并将其写入文件DirectionResponse.xml。然后读取DirectionResponse.xml并将其写入ppre_DirecionResponse.xml以进行处理。
我该如何更改此设置,以便使用UTF-8进行读写操作?
URLConnection conn = url.openConnection(); InputStream is = conn.getInputStream();
。然后使用is
作为输入流。 - Ted HoppBufferedReader br = Files.newBufferedReader(Paths.get("DirectionResponse.xml"), StandardCharsets.UTF_8);
- Vladimir Vagaytsev