首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
编程语言
> 详细
Java基础之IO
时间:
2015-02-13 17:59:37
阅读:
137
评论:
0
收藏:
0
[点我收藏+]
标签:
前两天学些了一些IO操作的知识,今天重点整理一下,省的以后忘记了
控制台类型的IO操作:
一般类型读数据:Sacnner in=new Sacnner(System.in); String name=in.nextLine()/nextInt()/next();
密码类型读操作:Console cons=System.console(); String name=cons.readLine("username");
Char[] pass=cons.readPassword("Password");
写操作:System.out.println(String);
FileReader和FileWriter:
大致流程如下:FileWriter is=new FileWriter("F:\\work\\js.txt");
js.write("我累了");//写入操作,此时在内存中
js.flush();//刷新流,执行此操作后写入文件,执行关闭会自动执行此操作
js.close();//关闭流
严格的写法如下:FileWriter js=null;
try
{
js=new FileWriter("F:\\work\\JAVAEXER\\jsky.txt",true);//true代表是增加而不是覆盖文本
js.write("\r\n上班时间是不准睡觉的");
}
catch (Exception e)
{
System.out.println("内容写入失败啦");
}
finally
{
try
{
if(js!=null)js.close();
}
catch (Exception e)
{
System.out.println("关闭失败");
}
}
对应的读操作如下:FileReader jj=null;
try
{
jj=new FileReader("F:\\work\\JAVAEXER\\jsky.txt");
int ss;
char[] msg=new char[1024];
while((ss=jj.read(msg))!=-1)
System.out.println(new String(msg,0,ss));
System.out.println("读取完毕");
}
catch (Exception e)
{
System.out.println("找不到文件或读取时发生错误");
}
finally
{
try
{
if(jj!=null)jj.close();
}
catch (Exception e)
{
System.out.println("关闭时发生错误");
}
}
BufferReader和BufferWriter:
缓冲区是为了提高流的操作效率出现的,所以在创建缓冲区之前必须要先有流对象。它是在流的基础上对流的功能的增强。
BufferWriter的操作步骤:
FileWriter fw=null;
BufferedWriter bw=null;
String fs="F:\\work\\JAVAEXER\\jsky.txt";
try
{
fw=new FileWriter(fs);
bw=new BufferedWriter(fw);
bw.write("\n又是新的一周");
bw.flush();
}
catch (Exception e)
{
System.out.println("找不到文件或者文件写入错误");
}
finally
{
try
{
if(bw!=null)bw.close();
if(fw!=null)fw.close();
}
catch (Exception e)
{
System.out.println("关闭时错误");
} }
BufferedReader操作:
FileReader fr=null;
BufferedReader br=null;
String fs="F:\\work\\JAVAEXER\\jsky.txt";
try
{
fr=new FileReader(fs);
br=new BufferedReader(fr);
String js=null;
while((js=br.readLine())!=null)System.out.println(js);
}
catch (FileNotFoundException e)
{
System.out.println("文件没有找到!"+e.toString());
}
catch(IOException e){
System.out.println("文件读取发生错误"+e.toString());}
finally
{
try
{
if(br!=null)br.close();
if(fr!=null)fr.close();
}
catch (Exception e)
{
System.out.println("关闭异常");
}
}
对于非字符型的文件,我们应该使用相应的字节流进行读写操作:
///使用字节流实现对图片的拷贝
public static void main(String[] args)
{
FileInputStream js=null;
FileOutputStream sk=null;
try
{
js=new FileInputStream("F:\\work\\temp\\java001.jpg");
sk=new FileOutputStream("F:\\work\\temp\\java002.jpg");
int ss=0;
byte[] b=new byte[1024];
while((ss=js.read(b))!=-1)sk.write(b,0,ss);
System.out.println("拷贝完毕");
}
catch (Exception e)
{
System.out.println("打开错误或者写入错误");
}
finally
{
try
{
if(js!=null)js.close();
if(sk!=null)sk.close();
}
catch (Exception e)
{
System.out.println("关闭失败");
}
}
Java基础之IO
标签:
原文地址:http://www.cnblogs.com/jsky/p/4290540.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
Spring Cloud 从入门到精通(一)Nacos 服务中心初探
2021-07-29
基础的排序算法
2021-07-29
SpringBoot|常用配置介绍
2021-07-29
关于 .NET 与 JAVA 在 JIT 编译上的一些差异
2021-07-29
C语言常用函数-toupper()将字符转换为大写英文字母函数
2021-07-29
《手把手教你》系列技巧篇(十)-java+ selenium自动化测试-元素定位大法之By class name(详细教程)
2021-07-28
4-1 YAML配置文件 注入 JavaBean中
2021-07-28
【python】 用来将对象持久化的 pickle 模块
2021-07-28
马拉车算法
2021-07-28
用Python进行冒泡排序
2021-07-28
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!