在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文件的更多相关文章

  1. Java IO 文件与流基础

    Java IO 文件与流基础 @author ixenos 摘要:创建文件.文件过滤.流分类.流结构.常见流.文件流.字节数组流(缓冲区) 如何创建一个文件 #当我们调用File类的构造器时,仅仅是在 ...

  2. 文件IO 相关的包:java.io文件——API

    文件IO 相关的包:java.io文件——API 1.Java.io.File类的使用(1)两种路径绝对路径:相对于当前路径:当前为 “工程名”(2)File类创建,对象为一个文件/目录,可能存在或不 ...

  3. 一头扎进 Java IO中-------java IO文件

    Java IO: 文件 在Java应用程序中,文件是一种常用的数据源或者存储数据的媒介.所以这一小节将会对Java中文件的使用做一个简短的概述.这篇文章不会对每一个技术细节都做出解释,而是会针对文件存 ...

  4. Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录

    Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录 这里先简单的贴下常用的方法: File.separator //当前系统文件分隔符 File.pathSeparator // ...

  5. IO文件操作

    × 目录 [1]IO文件的操作 [2]Directory类 [3]File类 [4]FileStream类 [5]文本文件的操作 一.IO文件的操作:   .net中对文件操作,经常会用到这样几个类: ...

  6. winform IO文件操作

    最近做了一个查错工具,运用了winform文件操作的知识,做了几点总结,不全面,只总结了几点项目里用过的知识(关于以下内容只是个人的理解和总结,不对的地方请多指教,有补充的可以评论留言大家一起讨论学习 ...

  7. java IO 文件批量重命名

    java IO 文件批量重命名 package com.vfsd.renamefile; import java.io.File; import java.io.FileInputStream; im ...

  8. (Unity)XML文件读写与IO文件操作类使用介绍

    using System.Xml;                //xml文件操作命名空间 #region 写入操作 void WriteXMLFile(string _fileName) { Xm ...

  9. java Io文件输入输出流 复制文件

    package com.hp.io; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...

  10. JAVA之IO文件读写

    IO概述:                                                          IO(Input output)流 作用:IO流用来处理设备之间的数据传输 ...

随机推荐

  1. CenOS下LAMP搭建过程

    CentOS虚拟机中安装LAMP: Linux+Apache+MySQL+PHP 安装前先关闭防火墙和Selinux 把所有安装包解压到/lamp下(根目录下的lamp目录) 安装gcc, gcc-c ...

  2. UVALive 4992 Jungle Outpost(半平面交)

    题意:给你n个塔(点)形成一个顺时针的凸包,敌人可以摧毁任何塔,摧毁后剩下的塔再组成凸包 在开始的凸包内选一点为主塔,保证敌人摧毁尽量多塔时主塔都还在现在的凸包内,求出最多摧毁的塔 题解:这题关键就是 ...

  3. 操,escape sequence的输入方法我以前找过一次,这次又忘了,又找了一次,记下来,

    所有的手册和回答都没有说,都是用 echo -e '\e[22;22m,如果不愿意使用echo -e,也可以 输入CvC[[22:22m 不要再忘记了.

  4. 一种快速查询多点DS18B20温度的方法(转)

    源:http://hi.baidu.com/james_xiao/item/79b961c90623093e45941623 一种快速查询多点DS18B20温度的方法 引言      为了满足实时性要 ...

  5. string 与wstring 的转换

    std::wstring StringToWString(const std::string &str) { std::wstring wstr(str.length(),L' '); std ...

  6. <a href="#" onclick="history.back();"></a>这样写为什么是对的? -(转)

    为什么不用这样写?<a href="#" onclick="javascript:history.back();"></a> 正解是: ...

  7. Bridge 设计模式

    原文:http://www.linkedkeeper.com/detail/blog.action?bid=26 You are here:  架构&实践 - 设计模式 Frank     2 ...

  8. 初始化时查看combox的文本内容

    string sql = string.Format("select field_name from pt_temp_field where pt_name = '{0}' and temp ...

  9. 【python】一个备份把文件备份到邮箱的python实现

    公司服务器弄了跳板机,从服务器上拉文件变得好麻烦,弄了个脚本从服务器上向邮箱发送文件,还蛮方便哈- #!/usr/bin/env python2.7 #! coding:UTF-8 import sm ...

  10. 使用Bootstrap建立网站微金所——头部

    1.微金所链接:http://www.weijinsuo.com/ 2.头部分为:topbar和nav上下两个部分 (1)topbar详解 topbar使用bootstrap的栅格系统 (2)nav分 ...