以下是我的导入:
import com.codename1.ui.*;
import com.codename1.ui.util.*;
import com.codename1.ui.plaf.*;
import com.codename1.ui.events.*;
import com.codename1.io.*;
import com.codename1.ui.layouts.*;
import java.io.*;
我无法编译此代码:
InputStream in = new FileInputStream("users.csv");
错误如下:
C:\Users\Isaac\Documents\NetBeansProjects\CodenameOne_TESTING\src\com\fakecompany\testapp\MyApplication.java:119: error: cannot find symbol
InputStream in = new FileInputStream("users.csv");
symbol: class FileInputStream
location: class MyApplication
我想这可能是导入的问题,果然,当我专门导入java.io.FileImputStream
时,它给了我一个额外的错误:
C:\Users\Isaac\Documents\NetBeansProjects\CodenameOne_TESTING\src\com\fakecompany\testapp\MyApplication.java:13: error: cannot find symbol
import java.io.FileInputStream;
symbol: class FileInputStream
location: package java.io
这是怎么回事?是否有一个不同的方式,我应该导入文件在代号一?让我知道,如果这是不够的我的代码找到错误。
PS:我需要实现一个输入流,这样我就可以解析csv文件:
CSVParser parser = new CSVParser();
String[][] data = parser.parse(in);
2条答案
按热度按时间qxsslcnc1#
看起来代号一号忽略了这个类--我怀疑还有其他类。
根据文档判断,我怀疑您希望使用
com.codename1.io.FileSystemStorage
类及其openInputStream
方法。你可能也想看video on storing data to persistent storage。
ilmyapht2#
Jon的答案是正确的,但只是部分。问题是CSV文件实际存储在哪里...
如果文件在src文件夹(jar的一部分)中,则使用
Display.getInstance().getResourceAsStream(getClass(), "/filename");
。如果你下载了它,那么很可能你下载到了存储器,而不一定是文件系统(在移动的中略有不同)。两者都有相当详细的API来打开/写入,
Util
类有一个很好的下载API。请记住,你不能像在电脑中那样把文件“放在”设备上,文件系统是非常不同的。作为一个旁注,Codename One有一个内置的
CSVParser
类,它可能对您有用。