我正在从文件中读取CSV。我在使用错误的标题时遇到了一些麻烦。
假设我有:
CUSTOMER_NO;CASEWHENDWH_ADM.DIM_CUSTOMER_EXT.CUSTOMER_ACT_STATE='0'THENDECODE(DWH_ADM.DIM_CUSTOMER_EXT.CUSTOMER_STATE,'XX','UNKNOWN',DWH_ADM.DIM_CUSTOMER_EXT.CUSTOMER_STATE)ELSEDWH_ADM.DIM_CUSTOMER_EXT.CUSTOMER_ACT_STATEEND;CUSTOMER_ACT_ZIP;BIRTH_CITY;BIRTH_STATE;
5180222;RM;00034;COLLEFERRO;ITALIA;
4341121;RO;45027;TRECENTA;ITALIA
该read_csv
功能(pandas
库)有做一些麻烦的工作。我应该对函数说:
“注意!请阅读标头中以';'分隔的字段。”
。有没有办法做到这一点(在文档中我什么都没找到)。
我认为您可以尝试OpenCSV。
但是,可以使用数据的分隔符设置为[[;]),而不是使用其默认的分隔符([,])。
示例代码:
try (final CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), ';', CSVParser.DEFAULT_QUOTE_CHARACTER, CSVParser.NULL_CHARACTER))) {
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
// nextLine[] is an array of values from the line
System.out.println(nextLine[0] + nextLine[1] + "etc...");
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句