package hanqi.test;

import java.io.File;
import java.io.IOException; public class Test02 {
public static void main(String[] args) { //目录操作
File dir =new File("d:/test/newdir"); //判断是否存在
if(dir.exists())
{
System.out.println("目录存在");
}
else
{
System.out.println("目录不存在");
//创建新目录
//只能一次创建最底层的目录
//要求上层目录必须存在
//dir.mkdirs(); //可以同时创建多层目录
dir.mkdirs();
System.out.println("创建目录成功");
} //目录和文件结合操作
//
String dir1="d:/test01";
String filename="test01.txt";
//File file = new File(dir1,filename);
//目录的对象
File d1=new File(dir1);
//判断目录不存在
if(!d1.exists())
{
//创建目录
d1.mkdirs();
}
File file=new File(d1,filename);
//创建文件
try{
file.createNewFile();
}catch(IOException e){
e.printStackTrace();
} }
}

package hanqi.test;

import java.io.File;
import java.io.IOException; public class Test07 { public static void main(String[] args) { //io流,File类的测试 //实例化某个文件的file对象
File file = new File("d:/test.txt"); //判断目标是否存在
if (file.exists())
{
System.out.println(file.getName()+"存在");
//删除
// file.delete();
// System.out.println(file.getName()+"已删除"); //改名
//本质:把原有文件以新的文件名和路径进行复制,然后删除源文件
file.renameTo(new File("d:/test2.txt"));
//没有提供复制方法
System.out.println(file.getName()+"文件改名成功");
}
else
{
System.out.println(file.getName()+"不存在"); //创建文件
try{
file.createNewFile();
System.out.println("创建"+file.getAbsolutePath());
}
catch(IOException e){
e.printStackTrace();
}
}
} }
package hanqi.test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream; public class Test03 { public static void main(String[] args){
//字节流
//输出流 从内存流向文件 try { //构造方法确定目标文件
//如果文件不存在,自动创建该文件,但不自动创建目录
//如果目录不存在,会引发异常
//FileOutputStream out = new FileOutputStream("d:/text03.txt"); File file = new File("d:/test"); if(!file.exists())
{
file.mkdirs();
} File file1 = new File("d:/test03.txt"); FileOutputStream out = new FileOutputStream(file1); //写入的内容
String nr="今天是星期一"; //把数据转成byte数组
byte[] b=nr.getBytes(); //写入数据到文件中
//byte[]内容数组 //思考题:把输出流的写入方式由覆盖改为追加 out.write(b); out.close(); //关闭流 ,释放资源 System.out.println("输出流写入文件成功"); //输入流 从文件吧数据读入内存
FileInputStream in =new FileInputStream("d:/test/test03.txt"); //装在数据的数组
byte[] b1= new byte[1024]; int i=0; String str=""; // 读取数据
//分段按顺序读取,每次最多读取数组长度大小的数据
//返回值表示每次读取的数据长度,如果数据读取完或读取失败,返回-1. while((i = in.read(b1))>0)
{
//组合数据
//参数 1 - 起始位置
str += new String(b1,0,i); } int j=in.read(b); System.out.println(j); System.out.println(str); in.close(); } catch (Exception e) { e.printStackTrace();
} }
}
package hanqi.test;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream; public class Test04 { public static void main(String[] args){ //追加 //1、先读取源文件内容
//输入流
//如果文件不存在,抛出异常
try {
FileInputStream in = new FileInputStream("d:/test/test03.txt");
//byte[]
byte[] b= new byte[1024]; //长度
int i = -1; //内容
StringBuilder str= new StringBuilder(); while((i=in.read(b))>0)
{
//组装数据
str.append(new String(b,0,i));
}
System.out.println(str); //2、把新内容追加到后面
str.append("\n这是追加的内容"); //3、把新内容覆盖源文件
//输出流
FileOutputStream out = new FileOutputStream("d:/test/test03.txt"); //写入数据
out.write(str.toString().getBytes()); //释放资源
out.close(); System.out.println("追加完成"); } catch (Exception e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} }
}
package hanqi.test;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class Test05 { public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根 FileOutputStream out = new FileOutputStream("d:/test/test03.txt",true); String str ="\r\n新的构造方法";
//写入数据
out.write(str.toString().getBytes()); //释放资源
out.close(); System.out.println("追加完成"); FileInputStream in = new FileInputStream("d:/test/test03.txt");
//byte[]
byte[] b= new byte[1024]; //长度
int i = -1; //内容
StringBuilder str1= new StringBuilder(); while((i=in.read(b))>0)
{
//组装数据
str1.append(new String(b,0,i));
}
System.out.println(str1);
} }

Java基础,输入输出的更多相关文章

  1. Java基础-输入输出-3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc。

    3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc. try { FileInputStream in = ...

  2. Java基础-输入输出-2.编写IoDemo.java的Java应用程序,程序完成的功能是:首先读取text.txt文件内容,再通过键盘输入文件的名称为iodemo.txt,把text.txt的内容存入iodemo.txt

    2.编写IoDemo.java的Java应用程序,程序完成的功能是:首先读取text.txt文件内容,再通过键盘输入文件的名称为iodemo.txt,把text.txt的内容存入iodemo.txt ...

  3. JAVA基础-输入输出:1.编写TextRw.java的Java应用程序,程序完成的功能是:首先向TextRw.txt中写入自己的学号和姓名,读取TextRw.txt中信息并将其显示在屏幕上。

    1.编写TextRw.java的Java应用程序,程序完成的功能是:首先向TextRw.txt中写入自己的学号和姓名,读取TextRw.txt中信息并将其显示在屏幕上. package Test03; ...

  4. Java基础——输入输出

    在程序最开始  import java.util.*; 因为Scanner类定义在java.util包中. 读取输入: 先构造一个Scanner对象,并与"标准输入流"System ...

  5. JAVA基础(三)—— 输入输出处理

    JAVA基础(三)-- 输入输出处理 1 输入解析 //Scanner获取输入 import java.util.Scanner; Scanner s = new Scanner(System.in) ...

  6. JAVA基础--IO输入输出(File使用)17

    一. File中的方法 1.  列举方法 /* * 获取指定目录以及子目录下的所有文件和文件夹 */ public class ListFilesDemo { public static void m ...

  7. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  8. Java基础常见英语词汇

    Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的                             ['prəʊɡræmɪŋ]编程 OO: object ...

  9. java基础3.0:Java常用API

    本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...

  10. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

随机推荐

  1. 天气预报API(二):全球城市、景点代码列表(“旧编码”)

    说明 2016-12-10 补充 (后来)偶然发现中国天气网已经有城市ID列表的网页...还发现城市编码有两种,暂且称中国天气网这些编码为旧标准"旧编码"的特征是 9个字符长度; ...

  2. android 中View的优化

    在android开发中Listview是一个很重要的组件,它以列表的形式根据数据的长自适应展示具体内容,用户可以自由的定义listview每一列的布局,但当listview有大量的数据需要加载的时候, ...

  3. java7笔记

    1 switch case 增加字符串类型,原理根据字符串hashcode以及string.equal比较2 数值字面量改进 新增二进制数值字面量 0b000004,在数值中间新增下划线方便阅读200 ...

  4. andriod studio

    初衷:使用andriod的webview调用html页面,生成app. AVD注意细节: RAM : 1G VM heap:228MB Graphics:software - GLES 2.0 存在的 ...

  5. wrHDL编译中软核代码初始化及编译耗时长的问题

    问题的提出整个WR的ISE工程比较大,编译时间很长,导致开发效率低.通过分析发现,ISE在综合的时候大量的时间都花在了初始化DPRAM上.调研发现Xilinx提供了BMM文件和DATA2MEM工具,可 ...

  6. UICollectionView(集合视图)以及自定义集合视图

    一.UICollectionView集合视图           其继承自UIScrollView.         UICollectionView类是iOS6新引进的API,用于展示集合视图,布局 ...

  7. Swap Swap,即交换分区

    Swap,即交换区,除了安装Linux的时候,有多少人关心过它呢?其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要.通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用 ...

  8. 关于Android的背景色配色小结

    三基色原理:三基色是指红,绿,蓝三色,人眼对红.绿.蓝最为敏感,大多数的颜色可以通过红.绿.蓝三色按照不同的比例合成产生.同样绝大多数单色光也可以分解成红绿蓝三种色光.这是色度学的最基本原理,即三基色 ...

  9. 【String与基本类型之间的转换】以及【进制转换】

    1. 基本数据类型---->字符串类型: 方法一:使用连接一个空字符串,例如  基本数据类型+“” : 方法二:静态方法 String.valueOf(),具体有: String.valueOf ...

  10. JAVA学习博客---2015-8

    八月份的学习博客,今天已经是九月四号了,补上吧.现在我又回到C++了,JAVA的基本的东西都懂了,但是更好的掌握JAVA,我必须原路返回去学习C++,当初为了更快的学JAVA,其实我得C++都是跳着看 ...