Пожалуйста, посмотрите на следующий кодЧтение и запись текста в формате ANSI
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author
*/
import java.io.*;
public class CSVConverter
{
private File csvFile;
private BufferedReader reader;
private StringBuffer strBuffer;
private BufferedWriter writer;
int startNumber = 0;
private String strString[];
public CSVConverter(String location, int startNumber)
{
csvFile = new File(location);
strBuffer = new StringBuffer("");
this.startNumber = startNumber;
//Read
try
{
reader = new BufferedReader(new FileReader(csvFile));
String line = "";
while((line=reader.readLine())!=null)
{
String[] array = line.split(",");
String inputQuery = "insertQuery["+startNumber+"] = \"insert into WordList_Table ('Engl','Port','EnglishH','PortugueseH','Numbe','NumberOf','NumberOfTime','NumberOfTimesPor')values('"+array[0]+"','"+array[2]+"','"+array[1]+"','"+array[3]+"',0,0,0,0)\"";
strBuffer.append(inputQuery+";"+"\r\n");
startNumber++;
}
}
catch(Exception e)
{
e.printStackTrace();
}
System.out.println(strBuffer.toString());
//Write
try
{
File file = new File("C:/Users/list.txt");
FileWriter filewrite = new FileWriter(file);
if(!file.exists())
{
file.createNewFile();
}
writer = new BufferedWriter(filewrite);
writer.write(strBuffer.toString());
writer.flush();
writer.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void main(String[]args)
{
new CSVConverter("C:/Users/list.csv",90);
}
}
Я пытаюсь прочитать файл CSV, редактировать текст в коде, и записать его обратно в файл .txt. Моя проблема в том, что у меня есть португальские слова, поэтому файл следует читать и писать с использованием формата ANSI
. Сейчас некоторые португальские слова заменяются символами в выходном файле.
Как я могу читать и записывать текстовые данные в файл в формате ANSI на Java?
Список farmacias = Files.readAllLines (Paths.get ("c: \\ tmp \\ Farmacias.txt"), Charset.forName ("Cp1252")); –
Я не согласен> Правильная кодировка Java для Windows ANSI - это Cp1252. ANSI - это трюк Microsoft, и его можно настроить на различные кодировки. Это может быть GBK, Shift_JIS и т. Д., В зависимости от настройки Windows. – TKJohn