System.getProperty(“line.separator”)在j2me中等效

时间:2012-01-26 12:04:16

标签: java-me cross-platform newline

我需要有一个跨平台的换行符引用来解析文件,而我正试图找到一种方法来做相当于通常的

System.getProperty("line.separator");

但是在J2ME中尝试这个,我得到一个返回的null字符串,所以我猜这里没有包含line.separator。有没有其他直接的方法可以将J2ME中的通用换行序列作为字符串?

编辑:有点澄清问题

2 个答案:

答案 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”。