Java基础,输入输出
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基础,输入输出的更多相关文章
- Java基础-输入输出-3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc。
3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc. try { FileInputStream in = ...
- 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 ...
- JAVA基础-输入输出:1.编写TextRw.java的Java应用程序,程序完成的功能是:首先向TextRw.txt中写入自己的学号和姓名,读取TextRw.txt中信息并将其显示在屏幕上。
1.编写TextRw.java的Java应用程序,程序完成的功能是:首先向TextRw.txt中写入自己的学号和姓名,读取TextRw.txt中信息并将其显示在屏幕上. package Test03; ...
- Java基础——输入输出
在程序最开始 import java.util.*; 因为Scanner类定义在java.util包中. 读取输入: 先构造一个Scanner对象,并与"标准输入流"System ...
- JAVA基础(三)—— 输入输出处理
JAVA基础(三)-- 输入输出处理 1 输入解析 //Scanner获取输入 import java.util.Scanner; Scanner s = new Scanner(System.in) ...
- JAVA基础--IO输入输出(File使用)17
一. File中的方法 1. 列举方法 /* * 获取指定目录以及子目录下的所有文件和文件夹 */ public class ListFilesDemo { public static void m ...
- [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html 谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...
- Java基础常见英语词汇
Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的 ['prəʊɡræmɪŋ]编程 OO: object ...
- java基础3.0:Java常用API
本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...
- 黑马程序员----java基础笔记上(毕向东)
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...
随机推荐
- socket 通信
type TWinSocketStringStream = class(TWinSocketStream) public function ReadString(nMaxLength: Integer ...
- 关于netty
现在我们一般使用应用程序或者链接库相互进行通信.例如,我们经常通过一个使用http协议的客户端链接库,从网站服务器中获得信息,并且通过网站服务,调用一些远程程序. 然而,一些通用协议或者它们的实现方式 ...
- .net之微信企业号开发(二) 企业号人员身份认证与开发
前言 这里完全可以链接一个登录页面,让用户输入用户名密码进行登录的...2333 但是,这样所就完全失去了微信企业号的意义,本来进入微信企业号的时候,就已经对人员身份进行认证了,你这里再让别人登录,不 ...
- 【Java】深深跪了,OJ题目Java与C运行效率对比(附带清华北大OJ内存计算的对比)
看了园友的评论之后,我也好奇清橙OJ是怎么计算内存占用的.重新测试的情况附在原文后边. -------------------------------------- 这是切割线 ----------- ...
- 冒泡排序-java
排序-冒泡排序 基本思想:从一端开始,逐个比较相邻的两个元素,发现倒序即交换. 这里按从后往前(从下往上)逐个比较相邻元素. 平均时间:O(n2) 最好情况:O(n) 最坏情况:O(n2)(逆序) 辅 ...
- 基于AutoCAD的ObjectARX之NET扩展(mcnetarx)-AcdbEntNext、AcdbEntLast
1.AcdbEntLast用于获取最后一个创建的实体. 2.AcdbEntNext用于获取指定实体名称之后的下一个创建的实体. ' 定义保存实体名称的变量 Dim ent() As Integer = ...
- 形参是ofstream
今天写了一段代码报错 void GetEigenvalue(pcl::PointCloud<pcl::PointXYZ>::ConstPtr cloud, vector<int> ...
- STL练习题
//hdu_2717 //map 一对多映射,基于关键字快速查找,不允许重复值 //queue 队列 先进先出 #include<iostream> #include<cstdio& ...
- PHP 计算每个月的最后一天
主要用到了 PHP 的 date() 函数和 mktime() 函数. date() 函数的 format 参数用到了选项 t,它表示某个月总共有多少天,数值范围为28-31. mktime() 函数 ...
- ABP框架详解(六)Aspects
这种AOP式的设计非常类似于Asp.net MVC和WebApi中过滤器(Filter)机制,感觉没有太多可讲述的,只能谈谈设计思路. 框架中AspectAttribute特性用于设置到需要被拦截的T ...