Java中對檔案的操作 (轉)

amyz發表於2007-08-15
Java中對檔案的操作 (轉)[@more@]

中對的操作

  java中提供了io類庫,可以輕鬆的用java實現對檔案的各種操作。下面就來說一下如何用java來實現這些操作。

  1。新建目錄


String filePath="c:/aaa/";
filePath=filePath.toString();//中文轉換
java.io.File myFilePath=new java.io.File(filePath);
if(!myFilePath.exists())
myFilePath.mkdir();
%>

  2。新建檔案



String filePath="c:/哈哈.txt";
filePath=filePath.toString();
File myFilePath=new File(filePath);
if(!myFilePath.exists())
myFilePath.createNewFile();
FileWriter resultFile=new FileWriter(myFilePath);
PrintWriter myFile=new PrintWriter(resultFile);
String strContent = "中文測試".toString();
myFile.println(strContent);
resultFile.close();
%>

 3。刪除檔案


String filePath="c:/支出證明單.xls";
filePath=filePath.toString();
java.io.File myDelFile=new java.io.File(filePath);
myDelFile.delete();
%>

 4。檔案複製



int bytesum=0;
int byteread=0; 
到流中
InputStream inStream=new FileInputStream("c:/aaa.doc");
FileOutputStream fs=new FileOutputStream( "d:/aaa.doc");
byte[]  buffer =new  byte[1444];
int length;
while ((byteread=inStream.read(buffer))!=-1)
 {
 out.println("

"+byteread+"
");
 bytesum+=byteread;
 System.out.println(bytesum);
 fs.write(buffer,0,byteread);
 } 
inStream.close();
%>

 5。整個資料夾複製



  String url2="d:/java/";
  (new File(url2)).mkdirs();
 File[] file=(new File(url1)).listFiles();
 for(int i=0;i  if(file[i].iile()){
  file[i].toString();
  FileInputStream input=new FileInputStream(file[i]);
  FileOutputStream output=new FileOutputStream(url2+"/"+(file[i].getName()).toString());
  byte[] b=new byte[1024*5];
  int len;
  while((len=input.read(b))!=-1){
  output.write(b,0,len);
  }
  output.flush();
  output.close();
  input.close();
  }
 }
%>

 6。檔案



  String fileName = "zsc104.swf".toString();
到流中
InputStream inStream=new FileInputStream("c:/zsc104.swf");
置輸出的格式
  response.reset();
  response.setContentType("bin");
  response.addHeader("Content-Disposition","attachment; filename="" + fileName + """);
環取出流中的資料
  byte[] b = new byte[100];
  int len;
  while((len=inStream.read(b)) >0)
  response.getOutputStream().write(b,0,len);  
  inStream.close();
%>

 7。欄位中的檔案下載





smart..*" %>

int bytesum=0;
int byteread=0;
開資料庫
ResultSet result=null;
String Sql=null;
PreparedStatement prestmt=null; 
DBstep.iDBManager2000 Obj=new DBstep.iDBManager2000();
DbaObj.OpenConnection();
得資料庫中的資料
Sql="  *  from  t_local_zhongzhuan ";
result=DbaObj.ExecuteQuery(Sql);
result.next();

資料庫中的資料讀到流中
InputStream inStream=result.getBinaryStream("content");
FileOutputStream fs=new FileOutputStream( "c:/dffdsafd.doc");

byte[]  buffer =new  byte[1444];
int length;
while ((byteread=inStream.read(buffer))!=-1)
 {
 out.println("

"+byteread+"
");
 bytesum+=byteread;
 System.out.println(bytesum);
  fs.write(buffer,0,byteread);
  }
%>

 8。把網頁儲存成檔案





 URL stdURL = null;
 BufferedReader stdIn = null;
 PrintWriter stdOut = null;
 try {
 stdURL = new URL("");
 }
 catch (MalformedURLException e) {
  throw e;
 }

try {
  stdIn = new BufferedReader(new InputStreamReader(stdURL.openStream()));
  stdOut = new PrintWriter(new BufferedWriter(new FileWriter("c:/163.html")));
 }
 catch (IOException e) {
 }

 /***把URL指定的頁面以流的形式讀出,寫成指定的檔案***/
 try {
  String strHtml = "";
  while((strHtml = stdIn.readLine())!=null) {
 stdOut.println(strHtml);
  }
 }
 catch (IOException e) {
  throw e;
 }
 finally {
  try {
  if(stdIn != null)
  stdIn.close();
  if(stdOut != null)
  stdOut.close();
  }
  catch (Exception e) {
  System.out.println(e);
  }
 }
%>

 9。直接下載網上的檔案



int bytesum=0;
int byteread=0;

URL url = new URL("");
 URLConnection conn = url.openConnection();
 InputStream inStream = conn.getInputStream();
 FileOutputStream fs=new FileOutputStream( "c:/abc.gif");

  byte[]  buffer =new  byte[1444];
  int length;
  while ((byteread=inStream.read(buffer))!=-1)
  {
  out.println("

"+byteread+"
");
  bytesum+=byteread;
  System.out.println(bytesum);
  fs.write(buffer,0,byteread);
  }
%>

  這些是我積累的一些java中對檔案的操作,希望對大家有點啟發。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-959281/,如需轉載,請註明出處,否則將追究法律責任。

相關文章