如何在数组列表中用阿拉伯语书写
How to write in arabic in arraylist
我有一个读取文件的应用程序,然后用户用不同的语言更新文件并保存它。但是每当有人更改语言并保存 txt 文件时,都会将字母更改为符号???我想我必须将它保存为 utf-8 格式。任何的想法?
代码的下一部分,当用户单击保存按钮时,我从 jtable 获取数据并将其保存到文件中。
注意:代码没有任何问题。问题是文件必须保存为utf-8。
if(buttonPressed.equals(save)){
File myFile = new File("youFile.srt");
try (PrintWriter writer = new PrintWriter(myFile)) {
for (int i =0 ; i< cModel.getRowCount(); i++)
{
sData.add(cModel.getValueAt(i, 1).toString());
eData.add(cModel.getValueAt(i, 2).toString());
tData.add(cModel.getValueAt(i, 3).toString());
writer.println(i+1 + "\n");
writer.println(sData.get(i)+" --> " + eData.get(i));
writer.println(tData.get(i));
writer.println("\n");
}
}catch(FileNotFoundException ioEx){
ioEx.printStackTrace();
}
PrintWriter 需要与 OutputStreamWriter 结合使用,因为它提供构造函数来提供文件格式。您可以执行以下操作:
FileOutputStream outputStream = new FileOutputStream(myFile);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(
outputStream, StandardCharsets.UTF_8), true)
您正在使用 FileWriter。最好创建一个 FileOutputStream,然后使用 OutputStreamWriter 写入输出。 OutputStreamWriter 允许您指定编码。
Writer writer = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("youFile.srt"), "UTF-8"));
try {
writer.write(aString);
} finally {
writer.close();
}
我有一个读取文件的应用程序,然后用户用不同的语言更新文件并保存它。但是每当有人更改语言并保存 txt 文件时,都会将字母更改为符号???我想我必须将它保存为 utf-8 格式。任何的想法? 代码的下一部分,当用户单击保存按钮时,我从 jtable 获取数据并将其保存到文件中。 注意:代码没有任何问题。问题是文件必须保存为utf-8。
if(buttonPressed.equals(save)){
File myFile = new File("youFile.srt");
try (PrintWriter writer = new PrintWriter(myFile)) {
for (int i =0 ; i< cModel.getRowCount(); i++)
{
sData.add(cModel.getValueAt(i, 1).toString());
eData.add(cModel.getValueAt(i, 2).toString());
tData.add(cModel.getValueAt(i, 3).toString());
writer.println(i+1 + "\n");
writer.println(sData.get(i)+" --> " + eData.get(i));
writer.println(tData.get(i));
writer.println("\n");
}
}catch(FileNotFoundException ioEx){
ioEx.printStackTrace();
}
PrintWriter 需要与 OutputStreamWriter 结合使用,因为它提供构造函数来提供文件格式。您可以执行以下操作:
FileOutputStream outputStream = new FileOutputStream(myFile);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(
outputStream, StandardCharsets.UTF_8), true)
您正在使用 FileWriter。最好创建一个 FileOutputStream,然后使用 OutputStreamWriter 写入输出。 OutputStreamWriter 允许您指定编码。
Writer writer = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("youFile.srt"), "UTF-8"));
try {
writer.write(aString);
} finally {
writer.close();
}