网站正在建设中的英文,厦门旅游集团网站建设,c 网站开发案例详解下载,那些空号检测网站是怎么做的今天再次遇到同一个问题#xff1a;策划给来一个Txt格式配置表#xff0c;我用解析类去读取#xff0c;返回的结果为空。解析类参数是#xff1a;主键key#xff0c;文件名fileName#xff0c;错误提示errorTip。 写读取语句的时候#xff0c;主键key我是直接从txt文件中… 今天再次遇到同一个问题策划给来一个Txt格式配置表我用解析类去读取返回的结果为空。解析类参数是主键key文件名fileName错误提示errorTip。 写读取语句的时候主键key我是直接从txt文件中复制出来它是txt文件的第一个字符串文件名fileName也是直接复制文件名。 由于已经不是第一次遇到这次决定不能再视而不见。 首先在解析类里打印发现其他配置表都正常就是这个读取语句中打印出来的key看起来一模一样但是就是无法被识别为与程序读取到的key是相等的想起上次看博客时提到微软的记事本会在文件里加标记符号于是删除key再手打发现依然如故。 回到读取语句发现删除直接复制过来的key字符串时删除完key内容之后想要继续删除包含该key的“符号时光标依然在原处这才发现“符号后有一个看不见的字符。于是google Txt文件头的相关资料了解到文本文件编码时会在文件头添加字节顺序标记Byte Order Mark 用于标识文件是采用那种格式的编码。一般的文本编辑器是看不见这个标记的实测Vim可以看见由于与文件头相连所以直接复制文本文件开头的字符串时会把这个标记一起复制。最后导致文本解析类判定读取语句给的key参数包含BOM与解析类中文本读取方法所读取到的key不一致。 解决办法下次写读取文本语句时莫偷懒直接复制自己手动敲即可。或者复制过来的时候光标跳到string头部删除一次不可见的BOM。 PS如何生成无BOM的文本文件 1、notepad 格式栏有转换为无BOM格式的选项。 2、Vim打开文件可以看到BOM文件头删除即可。转载于:https://www.cnblogs.com/lwblog/p/4918751.html