CodenameOne-读取文本文件的例程在CN1模拟器上工作,在iOS上不工作



我正在iOS上测试我的CodenameOne应用程序,我遇到了这个方法的问题:

public void readFile() {

JSONText=new String();
InputStream is = null;
try {
is = FileSystemStorage.getInstance().openInputStream(Utils.getRootPath()+DATA_FILE_NAME);
InputStreamReader br = new InputStreamReader(is);
int numChars=is.available();
System.out.println("numchars "+String.valueOf(numChars)); // = 1
char[] b=new char[numChars];

br.read(b, 0,numChars);
JSONText = new String(b);
br.close();
} catch (IOException e) {

}
System.out.println("read "+JSONText); // '{'
}

上述方法确实适用于CN1模拟器,但

它在iOS中不起作用。

CodenameOne有点跨平台,但不如Java本身。某些方法必须在每个平台上进行测试。

我对iOS平台感兴趣。

这个方法似乎在iOS上不起作用,实际上它只读取1个字符。

在iOS上读取CN1应用程序中使用的简单文本文件的正确例程是什么?

您不需要所有这些代码。您可以使用Util.readToString((将InputStream直接读取到String中。

String jsonText=Util.readToString(is);
System.out.println(jsonText);

最新更新