在Java中的While循环期间替换字符串中的字符

时间:2016-09-29 23:20:59

标签: java string while-loop

为什么这不起作用?

while ((line = file.readLine()) != null) {
            String myLine = line;
            input += "[" + myLine.replace(":", "]") + '\n';
            }

领先" ["是插入一行后跟一个新行(\ n)但它不会替换我的角色,即使它出现在每一行上。

正如您所知,我正在打开一个文件,逐行阅读,并尝试依次修改每一行。除了字符替换外,一切正常。

这是我的示例文字。

gen|1|1|בְּרֵאשִׁ֖ית בָּרָ֣א אֱלֹהִ֑ים אֵ֥ת הַשָּׁמַ֖יִם וְאֵ֥ת הָאָֽרֶץ׃ 

这就是我想要的。

[gen|1|1|]בְּרֵאשִׁ֖ית בָּרָ֣א אֱלֹהִ֑ים אֵ֥ת הַשָּׁמַ֖יִם וְאֵ֥ת הָאָֽר 

这就是我得到的。

[gen|1|1|בְּרֵאשִׁ֖ית בָּרָ֣א אֱלֹהִ֑ים אֵ֥ת הַשָּׁמַ֖יִם וְאֵ֥ת הָאָֽרֶץ׃ 

感谢您的帮助,因为我是新来的和编程。

1 个答案:

答案 0 :(得分:3)

那是因为输入文本不包含冒号。看起来像冒号的字符实际上是“:”U + 05C3:希伯来语PUNCTUATION SOF PASUQ。

尝试使用“\ u05C3”代替“:”。