4

我想知道如何在 j2me 中读取和写入文本到 .txt 文件,帮助我,谢谢...

4

1 回答 1

5
public String readFile(String path)
    {
        InputStream is = null;
        FileConnection fc = null;
        String str = "";
        try
        {
            fc = (FileConnection)Connector.open(path, Connector.READ_WRITE);

            if(fc.exists()) 
            {
                int size = (int)fc.fileSize();
                is= fc.openInputStream();
                byte bytes[] = new byte[size];
                is.read(bytes, 0, size);
                str = new String(bytes, 0, size);
            }
        } 
        catch (IOException ioe) 
        {
        Alert error = new Alert("Error", ioe.getMessage(), null, AlertType.INFO);
        error.setTimeout(1212313123);
        Display.getDisplay(main).setCurrent(error);} 
        finally 
        { 
            try 
            { 
                if (null != is) 
                    is.close(); 
                if (null != fc) 
                    fc.close(); 
            } 
            catch (IOException e) 
            { 
                System.out.println(e.getMessage()); 
            } 
        } 
        return str;
    }  

    void writeTextFile(String fName, String text) 
    { 
        OutputStream os = null; 
        FileConnection fconn = null; 
        try 
        { 
            fconn = (FileConnection) Connector.open(fName, Connector.READ_WRITE); 
            if (!fconn.exists()) 
                fconn.create();

            os = fconn.openDataOutputStream();
            os.write(text.getBytes()); 
            fconn.setHidden(false);
//          fconn.setReadable(true);
        } 

        catch (IOException e) 
        { 
            System.out.println(e.getMessage()); 
        } 
        finally 
        { 
            try 
            { 
                if (null != os) 
                    os.close(); 
                if (null != fconn) 
                    fconn.close(); 
            } 
            catch (IOException e) 
            { 
                System.out.println(e.getMessage()); 
            } 
        } 
    }
于 2011-03-08T16:34:59.477 回答