İçinde Almanca kelimeler içeren bir CSV Dosyası ayrıştırmak için supercsv 2.1.0 kullanıyorum.Supercsv'de kodlama nasıl kullanılır getHeader
Belirtilen CSV dosyasının ilk satırda bir başlığı vardır. Bu başlıkta, mu, ä, Ü, ö vb. Gibi bazı mutasyona uğramış ünlüler vardır. Örneğin : Betrag; Währung; Bilgisi
benim böyle csv başlığını almaya çalışıyorum şekli kodlama:
ICsvBeanReader inFile = new CsvBeanReader(new InputStreamReader(new FileInputStream(file), "UTF8"), CsvPreference.EXCEL_NORTH_EUROPE_PREFERENCE);
final String[] header = inFile.getHeader(true);
Aşağıda başlık dizisi ile benim sorundur. Mutasyonlu sesli harflere sahip tüm üstbilgiler utf8 karakter kümesi kullanılarak doğru şekilde kodlanmaz.
Başlığı doğru şekilde okuyabilme yolu var mı? İşte
sahte birim testidir:public class TestSuperCSV {
@Test
public void test() {
String path = "C:\\Umsatz.csv";
File file = new File(path);
try {
ICsvBeanReader inFile = new CsvBeanReader(new InputStreamReader(
new FileInputStream(file), "UTF-8"),
CsvPreference.EXCEL_NORTH_EUROPE_PREFERENCE);
final String[] header = inFile.getHeader(true);
System.out.println(header[9]); //getting "W?hrung" but needed "Währung" here
} catch (UnsupportedEncodingException | FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Saygılarımızla Alex
"UTF8" yerine "UTF-8" yi kullanmayı denediniz mi? –
Hayır, "UTF-8" sorunu çözmez –