J2ME:JSR75包的使用和事列!

Jsr75分兩個部分,一部分是File,即本地文件系統,一部分是PIM,說白了就是電話本之類的信息,我先學習的是File部分,通過import javax.microedition.io.file.*裏的包,可以實現自由訪問本機的文件系統,就跟Windos裏的資源管理器一樣,在這裏我介紹幾個我寫的方法

一.獲取指定路徑的目錄和文件列表

/*目錄文件列表*/
public Vector list(String path)
{
   try
   {
    FileConnection fc=(FileConnection)(Connector.open(path));
    if(fc.exists())
    {
     Vector listVec=new Vector(0,1);
     Enumeration en=fc.list();
     while(en.hasMoreElements())
     {
      listVec.addElement((String)(en.nextElement()));
     }
     return listVec;
    }
    else
    return null;
   }
   catch(Exception e)
   {
    System.out.println("listErr:"+e.toString());
    return null;   
   }
}

方法裏的path參數就是要查找的路徑,比如file:///c:/pictures/,切記,如果是目錄Path,那麼後面的/一定不能省,否則會查找不到內容。這個方法返回的是一個包含了指定Path下的所有目錄名和文件名的向量。

二.建立或者保存一個文件到指定路徑

/*保存文件*/
public void saveFile(String path,byte[] fileData)
{
   try
   {
    FileConnection fc=(FileConnection)(Connector.open(path));
    fc.create();
    fc.setWritable(true);
    OutputStream os=fc.openOutputStream();
    os.write(fileData);
    os.close();
   }
   catch(Exception e)
   {
    System.out.println("saveFileErr:"+e.toString());
   }
}

fileData是需要保存的文件內容,可以是聲音,也可以是圖像,或者文字之類

三.刪除指定文件

/*刪除文件*/
public void deleteFile(String path)
{
   try
   {
    FileConnection fc=(FileConnection)(Connector.open(path));
    if(fc.exists())
    fc.delete();
   }
   catch(Exception e)
   {
    System.out.println("deleteFileErr:"+e.toString());
   }
}

這個方法就不用多解釋了

四.讀取指定文件

/*讀取文件*/
public byte[] readFile(String path)
{
   try
   {
    FileConnection fc=(FileConnection)(Connector.open(path));
    if(fc.exists())
    {
     InputStream is=fc.openInputStream();
     byte[] temp=new byte[is.available()];
     is.read(temp);
     is.close();
     return temp;
    }
    else
    return null;
   }
   catch(Exception e)
   {
    System.out.println("readFileErr:"+path+e.toString());
    return null;
   }
}

此方法也不用多解釋了 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章