2014-01-12 41 views
0

在一个文本文件,我有以下几点:为什么不是string.split能够以下面的格式读取我的文件?

${"a":"b" 
} 
${"a":"b" 
} 
${"a":"b" 
} 
${"a":"b" 
} 

为什么我无法分割字符串转换成使用下列标记的阵列?

String [] tokens = readFile().split("$"); 

这里readFile()返回从文本文件中读取的整个字符串,它可以正常工作。我想令牌数组返回单个{“a”:“b”}作为数组的四个元素。

回答

5

split以正则表达式为参数。 $是用于匹配输入字符串结尾的元字符。它需要被转义

String [] tokens = readFile().split("\\$"); 

否则拆分将发生在输入的最后一个字符。

Special Characters section

+0

很好。正是我需要的! – Phoenix

0

拆分接受正则表达式,而不是一个简单的字符串。 $是一个正则表达式。

相关问题