java通过InputStream读取和写入文件 *** 作实例代码
1. File to InputStream
File file = new File("file.xml")
InputStream inputStream = new FileInputStream(file)
2.InputStream to File
InputStream inputStream = new FileInputStream("file.xml")
OutputStream outputStream = new FileOutputStream("file-new.xml")
int bytesWritten = 0
int byteCount = 0
byte[] bytes = new byte[1024]
while ((byteCount = inputStream.read(bytes)) != -1)
{
outputStream.write(bytes, bytesWritten, byteCount)
bytesWritten += byteCount
}
inputStream.close()
outputStream.close()
你可以这样理解:FileInputStream in = new FileInputStream("E:\\a.zip")
FileInputStream 顾名思义,就是写入。这句话将a.zip做编码后放到in,要用a.zip的时候就使用in读出来。
FileOutputStream os = new FileOutputStream("e:\\b.zip")
FileOutputStream顾名思义,就是读出,读出的话就要指定读出的目的地,e:\\b.zip便是目的地。
while(in.read(bt) != -1)
{
os.write(bt)
}
这段代码就是从in中读出编码后的文件内容,然后通过os写入b.zip.
public class FileTest {public static void main(String[] args) {
File file=new File("c:\\test.txt")
BufferedReader read=null
BufferedWriter writer=null
try {
writer=new BufferedWriter(new FileWriter("c:\\zwm.txt"))
} catch (IOException e1) {
e1.printStackTrace()
}
try {
read=new BufferedReader(new FileReader(file))
String tempString = null
while((tempString=read.readLine())!=null){
writer.append(tempString)
writer.newLine()//换行
writer.flush()//需要及时清掉流的缓冲区,万一文件过大就有可能无法写入了
}
read.close()
writer.close()
System.out.println("文件写入完成...")
} catch (IOException e) {
e.printStackTrace()
}
}
}
这个例子是将一个文件的东西,写入到另一个文件里面去。
你可以把你读取到的流用Out流写到你的文件里
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)