gpt4 book ai didi

Java Latin1 编码的文本文件

转载 作者:行者123 更新时间:2023-12-02 04:50:32 25 4
gpt4 key购买 nike

我正在尝试从 java 方法创建 ISO-8859-15 编码文本文件:

public void createLatin1EncodedTextFile(File latin1File, Integer numberOfLines) throws UnsupportedEncodingException,
FileNotFoundException {

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(latin1File), "8859_1"));
try {
for (int i = 0; i < numberOfLines; i++) {
bw.write(new String(generateRandomString().getBytes(), "ISO-8859-15"));
}
}
catch (IOException e) {
e.printStackTrace();
}
finally {
try {
if (!bw.equals(null)) {
bw.close();
}
}
catch (IOException e) {
e.printStackTrace();
}
}
}

generateRandomString() 方法生成随机字符序列。该方法工作正常,但是当我用 notepad++ 打开它时,它说该文件是用 UTF-8 编码的。

最佳答案

您所做的工作远远超出了您需要做的工作。文件的编码是您传递给 OutputStreamWriter 的任何编码:

try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(latin1File), "ISO-8859-15"))) {
for (int i = 0; i < numberOfLines; i++) {
bw.write(generateRandomString());
}
}

Writer 的全部意义在于它接受字符(或字符串)并负责对它们进行编码的任务。

事实上,您的参数名为 latin1File,这让我想知道您是否真的想创建 ISO-8859-15 文件。

关于Java Latin1 编码的文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29279543/

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