我需要导入批量文件,分析数据并生成报告。这些文件中有3种类型的数据。对于每种类型的数据,都有不同的布局。
卖家详细信息
salesperson数据的格式为id 001,行的格式如下:
001ç公积金ç名称ç薪水
客户数据
客户数据的格式为id 002,行的格式如下:
002ç法人税号ç名称ç业务领域
销售数据
销售数据的格式为id 003。在销售行中,有一个项目列表,它被方括号[]包围。该行的格式如下:
003ç销售idç [项目id项目数量项目价格]ç业务员姓名
样本数据
以下是系统应该能够读取的数据示例。
001ç1234567891234ç佩德罗ç50000
001ç3245678865434ç保罗ç40000.99
002ç2345675434544345ç何塞·达席尔瓦ç农村的
002ç2345675433444345ç爱德华多佩雷拉ç农村的
003ç10ç [1-10-100,2-30-2.50,3-40-3.10] ç佩德罗
003ç08ç [1-34-10,2-33-1.50,3-40-0.10] ç保罗
当字段值包含分隔符(ç)?
例子:
001ç1234567891234ç阿松çãoç50000
1条答案
按热度按时间uxhixvfz1#
我不知道你说得“做”点什么是什么意思。
但是处理使用
ç
作为分隔符。前提是ç
仅用作分隔符。如果您正在使用
String.split
,您可以使用"ç"
作为分隔符regex。如果您正在使用
Scanner
,您可以包括"ç"
在分隔符中。一个典型的csv阅读器库将;允许您使用
"ç"
作为字段分隔符。。。而不是","
.也有可能
ç
实际上表示其他内容,用于写入文件的字符集/编码与用于读取文件的字符集/编码不匹配。使用它不是一个好主意
ç
作为分隔符。而c+cedila主要用于非英语文本(参见https://en.wikipedia.org/wiki/%c3%87),你偶尔会在英文文本中看到它。如果将其用作分隔符,则有可能发生冲突。。。如果文件格式没有引用或转义分隔符的语法,则可能会出现问题。这就导致了:
当字段值包含分隔符(ç)?
然后:
文件语法中需要引用或转义方案。
如果没有,则文件语法不明确。
如果语法不明确,就没有简单的方法来解析文件(您需要一个在所有实际例子中都有效的消歧启发式方法。您可能需要一个手工构建的解析器来实现启发式。)
如果不能通过启发式解决歧义,则需要更改文件语法;e、 g.添加转义/引用支持,或使用其他分隔符。