我需要有一个跨平台的换行符引用来解析文件,而我正试图找到一种方法来做相当于通常的
System.getProperty("line.separator");
但是在J2ME中尝试这个,我得到一个返回的null字符串,所以我猜这里没有包含line.separator。有没有其他直接的方法可以将J2ME中的通用换行序列作为字符串?
编辑:有点澄清问题
答案 0 :(得分:2)
好像我忘了回答我的问题了。我使用了一段代码,允许我使用“\ r \ n”作为分隔符,实际上也分别考虑了\ r和\ n:
public class Tokenizer {
public static String[] tokenize(String str, String delimiter) {
StringBuffer strtok = new StringBuffer();
Vector buftok = new Vector();
char[] ch = str.toCharArray(); //convert to char array
for (int i = 0; i < ch.length; i++) {
if (delimiter.indexOf(ch[i]) != -1) { //if i-th character is a delimiter
if (strtok.length() > 0) {
buftok.addElement(strtok.toString());
strtok.setLength(0);
}
}
else {
strtok.append(ch[i]);
}
}
if (strtok.length() > 0) {
buftok.addElement(strtok.toString());
}
String[] splitArray = new String[buftok.size()];
for (int i=0; i < splitArray.length; i++) {
splitArray[i] = (String)buftok.elementAt(i);
}
buftok = null;
return splitArray;
}
}
答案 1 :(得分:1)
我不认为“line.separator”是JME的系统属性。在MIDN开发人员的SDN FAQ中查看此文档:What are the defined J2ME system property names?
为什么你还需要获得行分隔符?我所知道的是你可以在JME中使用“\ n”。