【问题标题】:^M (ctrl+M) character is a part of string but java get end of line^M (ctrl+M) 字符是字符串的一部分,但 java 得到行尾
【发布时间】:2016-10-17 05:03:43
【问题描述】:

我有一个日志文件,每一行都是数据库的一行,我想将它插入数据库。在密码字段的值中有 ^M (ctrl+M) 字符,它不是行尾,但是当 java 扫描仪到达时,它取行的剩余字符换行我如何解决。请注意,我需要它并且不要'不想删除它

【问题讨论】:

  • 不要使用Scanner 来读取文件。
  • 那么如何读取文件呢?
  • 例如,您可以使用FileReader

标签: java readfile control-characters


【解决方案1】:

尝试将 BufferedReader 与 FileReader 一起使用,而不是 Scanner。 或者您可以使用相应的编码类型读取文件,即。

Scanner scanner = new Scanner(new File("LogFile.txt"), "utf-8");

【讨论】:

  • 在get ^M取剩余的新行的地方不起作用
  • 能否请将您的块 fo 代码发布到您尝试使用扫描仪读取文件的位置。
  • 扫描仪scanner=new Scanner(new File("c.log"),"utf-8");
  • while (scanner.hasNextLine()){ String line=scanner.nextLine();
  • 它应该工作。发布您的完整代码块和详细信息
猜你喜欢
  • 2010-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-27
  • 2020-09-15
  • 2013-04-30
  • 1970-01-01
  • 2016-07-14
相关资源
最近更新 更多