【问题标题】:how to read line without skipping end of line character in java using buffered reader [closed]如何使用缓冲阅读器在不跳过Java中的行尾字符的情况下读取行[关闭]
【发布时间】:2020-10-27 21:36:35
【问题描述】:

我正在使用 BufferedReader 对象通过 FileInputStream 从 HTTP 服务器读取行。 readline() 函数返回一个跳过行尾字符的行。但我的要求需要阅读完整的字符,因为它将用于验证签名。如果内容中的任何字符不匹配,则签名验证将失败。请帮我解决这个问题

【问题讨论】:

  • 阅读时是否需要将文本分成单独的行?

标签: java bufferedreader digital-signature xml-signature inputstreamreader


【解决方案1】:

你能不能只在 readLine() 返回的字符串末尾附加“\n”?

您还可以在 BufferedReader 类中使用普通的“读取”方法,例如

BufferedReader in = new BufferedReader(new FileReader(file));

int ch;
while((ch = in.read()) != -1) {
   //do processing with (char)ch
}

这将读取每个字符,而不剥离 \n

【讨论】:

  • 谢谢 听起来不错,完全符合我的要求
  • 嗨 Swayne,如果我们使用 read 函数而不是 readLine 函数逐个字符地读取会不会影响性能?
  • 嗯,使用 .read() 读取一个字符所花费的时间与使用 readLine() 读取一整行所花费的时间大致相同,因此取决于行的长度是多少会慢一些
  • 我建议在这里阅读更多内容:stackoverflow.com/questions/41324192/…。和
猜你喜欢
  • 1970-01-01
  • 2015-11-19
  • 1970-01-01
  • 2019-07-04
  • 2016-06-17
  • 2019-07-08
  • 1970-01-01
  • 1970-01-01
  • 2014-10-02
相关资源
最近更新 更多