gpt4 book ai didi

file - Java中的StringBuilder编码

转载 作者:行者123 更新时间:2023-12-01 09:29:11 24 4
gpt4 key购买 nike

我有一个方法可以从 sdcard (Android) 加载文件,然后使用 StringBuilder 读取它。我正在阅读的文字是用我的母语字符写的,例如ą ś ć ź ż...不幸的是,StringBuilder(或 FileInputStream)无法正确读取它们。如何设置正确的编码?

这里是代码:

File file = new File(filePath);
FileInputStream fis = null;
StringBuilder builder = new StringBuilder();

try {
fis = new FileInputStream(file);
int content;
while ((content = fis.read()) != -1) {
builder.append((char) content);
}

} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fis != null)
fis.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
System.out.println("File Contents = " + builder.toString());
contactService.updateContacts(builder.toString());

最佳答案

例如,您可以尝试将 InputStreamReader 与 BufferedReader 结合使用,这应该可以解决问题:

InputStreamReader inputStreamReader = new InputStreamReader((InputStream)fis, "UTF-8");
BufferedReader br = new BufferedReader(inputStreamReader);
String line;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
}

这么久,汤姆

关于file - Java中的StringBuilder编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17880045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com