我的代码中有一小段需要将cedilla分隔文件转换为逗号分隔文件。
它适用于正常的测试用例。但是,当它变为实时时,当文件在unix环境中提供时,它无法识别文本中的cedilla字符并且无法转换为正确的CSV文件。
如果有人遇到这个问题,你能帮帮我吗? 我需要从命令行参数传递分隔符。
很抱歉,如果问题格式不正确,但我没有收到任何帮助。所以发布在stackoverflow中。
示例代码:
line = line.replace(Character.toLowerCase(context.getConfiguration().get("input.delimiter").charAt(0)), ',');
line = line.replace(Character.toUpperCase(context.getConfiguration().get("input.delimiter").charAt(0)), ',');
答案 0 :(得分:0)
您面临的问题似乎是在实际环境中,默认字符编码与本地开发计算机上的编码不同。处理CSV文件时,您应指定哪个是csv文件编码。 您应该查看How to read a file in Java with specific character encoding?