IO文件
在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。
Separator:
比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写:
File file1 = new File ("C:\tmp\test.txt");
在Linux下则是这样的:
File file2 = new File ("/tmp/test.txt");
如果要考虑跨平台,则最好是这么写:
File myFile = new File("C:" + File.separator + "tmp" + File.separator, "test.txt");
File类有几个类似separator的静态字段,都是与系统相关的,在编程时应尽量使用。
package cn.mndl;
import java.io.File ;
import java.io.IOException ; public class Hello { public static void main(String[] args) {
// TODO Auto-generated method stub
File f = new File ("E:" + File.separator + "test.txt") ;
if(f.exists()){
f.delete() ;
System.out.println("删除成功") ;
} else {
try{
f.createNewFile() ;
System.out.println("name of teh currect file :" + f.getName()) ;
System.out.println("parents director of the currect file :" + f.getParent()) ;
System.out.println("full path of currect file :" +f.getPath()) ;
System.out.println("is readable ? :"+f.canRead());
System.out.println("is writable ?" + f.canWrite());
} catch (IOException e){
e.printStackTrace(); }
}
} }
package cn.mndl;
import java.io.BufferedReader;
import java.io.File ;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException ; public class Hello { public static void main(String[] args) {
// TODO Auto-generated method stub
try{
//第一步,使用FILE类定义一个文件
File inFile = new File("in.txt") ;
File outFile = new File("out.txt") ;
//第二步,用一个字节流或者字符流的子类进行流对象 的实例化
FileReader fi = new FileReader(inFile) ;
BufferedReader bfi = new BufferedReader(fi) ;
FileWriter fo = new FileWriter(outFile);
//第三步,读写操作
String l = "" ;
String [] arrs = null ;
while((l = bfi.readLine())!= null){
arrs = l.split(",") ;
System.out.println(arrs[]);
}
//第四步,关闭字节或者字节流
fi.close();
bfi.close();
fo.close();
} catch (IOException e){
e.printStackTrace() ;
} } }
对象流
package cn.mndl;
import java.io.BufferedReader;
import java.io.File ;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException ;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable; class Student implements Serializable {
private int id ;
private String name ;
public Student(int id, String name) {
this.id = id;
this.name = name;
}
public String toString(){
return "id: " + this.id + ", name : " + this.name;
} }
public class Hello { public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
Student stu = new Student(,"zhuopeng") ;
Student s ;
try{
FileOutputStream out = new FileOutputStream("123.txt") ;//输出到文件
ObjectOutputStream so = new ObjectOutputStream(out) ;
so.writeObject(stu) ;
so.close();
out.close(); FileInputStream in = new FileInputStream("123.txt") ;//从文件中读入
ObjectInputStream io = new ObjectInputStream(in) ;
s = (Student) io.readObject() ;
System.out.println(s) ; } catch(FileNotFoundException e){
e.printStackTrace() ;
} catch(Exception e){
e.printStackTrace();
}
} }
IO文件的更多相关文章
- Java IO 文件与流基础
Java IO 文件与流基础 @author ixenos 摘要:创建文件.文件过滤.流分类.流结构.常见流.文件流.字节数组流(缓冲区) 如何创建一个文件 #当我们调用File类的构造器时,仅仅是在 ...
- 文件IO 相关的包:java.io文件——API
文件IO 相关的包:java.io文件——API 1.Java.io.File类的使用(1)两种路径绝对路径:相对于当前路径:当前为 “工程名”(2)File类创建,对象为一个文件/目录,可能存在或不 ...
- 一头扎进 Java IO中-------java IO文件
Java IO: 文件 在Java应用程序中,文件是一种常用的数据源或者存储数据的媒介.所以这一小节将会对Java中文件的使用做一个简短的概述.这篇文章不会对每一个技术细节都做出解释,而是会针对文件存 ...
- Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录
Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录 这里先简单的贴下常用的方法: File.separator //当前系统文件分隔符 File.pathSeparator // ...
- IO文件操作
× 目录 [1]IO文件的操作 [2]Directory类 [3]File类 [4]FileStream类 [5]文本文件的操作 一.IO文件的操作: .net中对文件操作,经常会用到这样几个类: ...
- winform IO文件操作
最近做了一个查错工具,运用了winform文件操作的知识,做了几点总结,不全面,只总结了几点项目里用过的知识(关于以下内容只是个人的理解和总结,不对的地方请多指教,有补充的可以评论留言大家一起讨论学习 ...
- java IO 文件批量重命名
java IO 文件批量重命名 package com.vfsd.renamefile; import java.io.File; import java.io.FileInputStream; im ...
- (Unity)XML文件读写与IO文件操作类使用介绍
using System.Xml; //xml文件操作命名空间 #region 写入操作 void WriteXMLFile(string _fileName) { Xm ...
- java Io文件输入输出流 复制文件
package com.hp.io; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...
- JAVA之IO文件读写
IO概述: IO(Input output)流 作用:IO流用来处理设备之间的数据传输 ...
随机推荐
- 动态规划1-----------poj1080
#include<cstdio> #include<cstdlib> #include<iostream> #include<algorithm> us ...
- storm的并发
1 storm并行的基本概念 storm集群中的一个机器可以运行一个或者多个worker,对应于一个或者多个topologies. 1个worker进程运行1个或多个excutor线程.每个worke ...
- webpy
url处理 对于一个站点来说,URL 的组织是最重要的一个部分,因为这是用户看得到的部分,而且直接影响到站点是如何工作的,在著名的站点如:del.icio.us ,其URLs 甚至是网页界面的一部分. ...
- windows加固方案
1 账号管理.认证授权.... 1 1.1 账号... 1 1.2 口令... 1 1.3 授权... 2 2 日志配置操作.... 3 3 IP ...
- ViewController 视图控制器
[父视图控制器 addChildViewController:子视图控制器]; 在此,图控制器A添加了另一个图控制器B,那么A充当父视图控制器,B充当子视图控制器.父视图控制器充当了视图控制器容器的角 ...
- APK自我保护方法
标 题: [原创]APK自我保护方法 作 者: MindMac 时 间: 2013-12-28,21:41:15 链 接: http://bbs.pediy.com/showthread.php?t= ...
- SqlServer批量导入
SQL Server的Bulk Insert语句可以将本地或远程的数据文件批量导入到数据库中,速度非常的快.远程文件必须共享才行,文件路径须使用通用约定(UNC)名称,即"\\服务器名或IP ...
- PAT (Advanced Level) 1073. Scientific Notation (20)
简单模拟题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> # ...
- mariadb cache
Since MariaDB Galera cluster versions 5.5.40 and 10.0.14 you can use the query cache. Earlier versio ...
- JS监听input框的回车事件、属性值改变事件
一.介绍 在程序猿门的工作中,经常会遇见一些表单数据的提交,对于有表单的东西而言,input输入框是非常常见的,所以对于一些input的基本事件,我们需要去掌握 二.input的监听enter事件 比 ...