Java中对 [文件] 的操作示例

原创 2005年04月22日 16:56:00
Java中对文件的操作


java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。


1。新建目录


<%@ page contentType="text/html;charset=gb2312"%>

<%

String filePath="c:/aaa/";

filePath=filePath.toString();//中文转换

java.io.File myFilePath=new java.io.File(filePath);

if(!myFilePath.exists())

myFilePath.mkdir();

%>


2。新建文件


<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.io.*" %>

<%

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。删除文件


<%@ page contentType="text/html;charset=gb2312"%>

<%

String filePath="c:/支出证明单.xls";

filePath=filePath.toString();

java.io.File myDelFile=new java.io.File(filePath);

myDelFile.delete();

%>


4。文件拷贝


<%@ page contentType="text/html; charset=gb2312" %>

<%@ page import="java.io.*" %>

<%

int bytesum=0;

int byteread=0;

file://读到流中

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("<DT><B>"+byteread+"</B></DT>");

bytesum+=byteread;

System.out.println(bytesum);

fs.write(buffer,0,byteread);

}

inStream.close();

%>


5。整个文件夹拷贝


<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.io.*" %>

<%String url1="C:/aaa";

String url2="d:/java/";

(new File(url2)).mkdirs();

File[] file=(new File(url1)).listFiles();

for(int i=0;i<file.length;i++){

if(file[i].isFile()){

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。文件下载


<%@ page contentType="text/html; charset=gb2312" %>

<%@ page import="java.io.*" %>

<%

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。数据库字段中的文件下载


<%@ page contentType="text/html; charset=gb2312" %>

<%@ page import="java.sql.*"%>

<%@ page import="java.lang.*" %>

<%@ page import="java.io.*" %>

<%@ page import="com.jspsmart.upload.*" %>

<%@ page import="DBstep.iDBManager2000.*"%>

<%

int bytesum=0;

int byteread=0;

//打开数据库

ResultSet result=null;

String Sql=null;

PreparedStatement prestmt=null;

DBstep.iDBManager2000 DbaObj=new DBstep.iDBManager2000();

DbaObj.OpenConnection();

//取得数据库中的数据

Sql="select * from t_local_zhongzhuan ";

result=DbaObj.ExecuteQuery(Sql);

result.next();


file://将数据库中的数据读到流中

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("<DT><B>"+byteread+"</B></DT>");

bytesum+=byteread;

System.out.println(bytesum);

fs.write(buffer,0,byteread);

}

%>


8。把网页保存成文件


<%@ page import="java.text.*"%>

<%@ page import="java.util.*"%>

<%@ page import="java.io.*"%>

<%@ page import="java.net.*"%>

<%

URL stdURL = null;

BufferedReader stdIn = null;

PrintWriter stdOut = null;

try {

stdURL = new URL("http://www.163.com");

}

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。直接下载网上的文件


<%@ page import="java.io.*"%>

<%@ page import="java.net.*"%>

<%

int bytesum=0;

int byteread=0;


URL url = new URL("http://pimg.163.com/sms/micheal/logo.gif");

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("<DT><B>"+byteread+"</B></DT>");

bytesum+=byteread;

System.out.println(bytesum);

fs.write(buffer,0,byteread);

}

%>



10。按行读文件

<%@ page contentType="text/html; charset=gb2312" %>

<%@ page import="java.io.*" %>

<% FileReader myFileReader=new FileReader("c:/哈哈.txt");

BufferedReader myBufferedReader=new BufferedReader(myFileReader);

String myString=null;

String resultString=new String();

while((myString=myBufferedReader.readLine())!=null) { resultString=resultString+myString+"<br>"; }

out.println(resultString); myFileReader.close();

%>

JAVA对文件操作的常用方法

JAVA对文件操作的常用方法 // 文件数据的写入 public static void StringBufferWriteFile(Map data,String path) thro...
  • jian_csdn
  • jian_csdn
  • 2015年01月30日 10:41
  • 725

浅谈 java中 IO流 对文件的操作

案例分析 1.     向文件中写入字符串                    public class FileTest {                    public static vo...
  • Fairy_Huang
  • Fairy_Huang
  • 2017年07月27日 15:48
  • 149

利用java对excel进行读写操作

因为参与的一个项目有一个任务,是对一个excel文件中的字符进行分隔, 如果将excel转成txt,可能会加大对字符的分隔难度,所以利用开源项目JExcelApi来操作。 下面简单演示下如何对ex...
  • ieicihc
  • ieicihc
  • 2011年08月24日 17:59
  • 2504

Java中对文件的读写操作

像我们经常会遇到这样的事情,例如一个txt文件中有姓名和电话,这个时候很经常就需要将名字和电话号码进行提取操作,这个时候就可以利用Java中io来实现了。 这里我就不具体介绍io中的字节流和字符流的异...
  • linzhiqiang0316
  • linzhiqiang0316
  • 2017年05月12日 16:09
  • 381

java中图片简单操作

最近做网站时,经常会对图片进行操作,用到的基本操作如下: 1.读取图片到 二进制数组中 ByteArrayOutputStream out = null ; B...
  • bornonew
  • bornonew
  • 2016年07月29日 15:32
  • 974

java语言中对文件基本的读写操作

/*   注意要先创建好文件 */ package File; import java.io.*; public class CopReadWriteFile {  public stati...
  • qq_27252133
  • qq_27252133
  • 2016年08月10日 19:49
  • 437

java操作json字符串 与 js操作json字符串简单例子

java以及js操作jsong的简单例子
  • u012745028
  • u012745028
  • 2016年01月19日 17:14
  • 727

Java File文件操作

Java提供File类,让我们对文件进行操作,简单整理了一下File类的用法。 1.基本概念File:文件和目录路径名的抽象表示形式,代表文件或者文件夹。 2.构造方法 // 根据pa...
  • MAGIC_JSS
  • MAGIC_JSS
  • 2016年05月21日 20:35
  • 7849

对文件“\\.\PhysicalDrive1”的操作失败。

用u盘给vm虚拟机安装系统时提示: 因为前面添加了一个新的硬盘(既你的U盘),用来引导虚拟机进入系统启动盘,如果你在“可移动设备”中将选择“连接(断开与主机的连接)”,那么你的U盘就作为虚拟机的移动...
  • chenghuikai
  • chenghuikai
  • 2016年12月30日 15:03
  • 2495

java操作ini文件

根据网上其他代码进行修改。 读取文件: import java.io.BufferedReader; import java.io.File; import java.io.FileRea...
  • Mr__fang
  • Mr__fang
  • 2014年12月19日 17:33
  • 2634
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java中对 [文件] 的操作示例
举报原因:
原因补充:

(最多只允许输入30个字)