Java学习---流与文件
实验10 流与文件操作
一、实验目的
理解和掌握JAVA程序中实现输入/输出的技术和有关的类与方法。
二、实验要求
- 掌握File类常用的方法
- 掌握标准数据流及Scanner类的应用。
- 掌握文件输入输出流使用
- 掌握数据输入输出流使用
- 了解对象流的使用。
三、实验内容
(一) 使用File类,测试文件与文件夹属性
1.测试理解File类
package FileTest1;
import java.io.*;
public class TestFile1 {
public static void main(String args[]) {
// 磁盘上已有文件的测试(查磁盘上的文件与文件夹,替换下列文件夹与文件名)
File f1 = new File("C:\\WINDOWS", "win.ini");
System.out.println("文件win.ini存在吗:" + f1.exists());
System.out.println("文件win.ini是可读的吗:" + f1.canRead());
System.out.println("文件win.ini是可写的吗:" + f1.canWrite());
System.out.println("文件win.ini是隐藏的文件吗:" + f1.isHidden());
System.out.println("文件win.ini的绝对路径:" + f1.getAbsolutePath());
System.out.println("文件win.ini的路径:" + f1.getPath());
System.out.println("文件win.ini的文件名:" + f1.getName());
System.out.println("文件win.ini的长度:" + f1.length());
System.out.println("文件win.ini的最后修改时间(长整形):" + f1.lastModified());
File f2 = new File("C:\\WINDOWS");
System.out.println("目录C:\\WINDOWS:存在吗:" + f2.exists());
System.out.println("C:\\WINDOWS:是目录吗?" + f2.isDirectory());
System.out.println("C:\\WINDOWS:是文件吗?" + f2.isFile());
System.out
.println("----------------------------------------------------------------------");
File fileName[] = f2.listFiles();
for (int i = 0; i < fileName.length; i++) {
if (fileName[i].isFile())
System.out.println("文 件 名 称:" + fileName[i].getName());
else
System.out.println("文件夹名称:" + fileName[i].getName());
}
System.out
.println("----------------------------------------------------------------------");
String fileNameStr[] = f2.list();
for (int i = 0; i < fileName.length; i++) {
System.out.println("文件(夹)名称:" + fileNameStr[i]);
}
System.out
.println("----------------------------------------------------------------------");
// 磁盘上没有的文件夹的测试
File f3 = new File("E:\\8000");
System.out.println("目录E:\\8000存在吗:" + f3.exists());
f3.mkdir();
System.out.println("目录E:\\8000存在吗:" + f3.exists());
f3.delete();
System.out.println("目录E:\\8000存在吗:" + f3.exists());
// 磁盘上没有的文件的测试
File f4 = new File("E:\\9000");
if (!f4.exists())
f4.mkdir();
File f5 = new File(f4, "abc.txt");
System.out.println("文件abc.txt存在吗?:" + f5.exists());
try {
if (!f5.exists())
f5.createNewFile();
System.out.println("文件abc.txt存在吗?:" + f5.exists());
} catch (IOException e) {
System.out.println("异常" + e);
}
}
}
2.测试可执行文件
package FileTest1;
import java.io.*;
public class TestFile2 {
public static void main(String args[]) {
try {
Runtime ce = Runtime.getRuntime();
File file = new File("c:/windows", "Notepad.exe");
ce.exec(file.getAbsolutePath());
} catch (Exception e) {
System.out.println(e);
}
}
}
(二) 编程
- 编程:使用Scanner类从键盘输入10个int类型的数,求累加和和平均值。
import java.util.Scanner; public class 二1 { public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入10个数");
Scanner in = new Scanner(System.in);
int sum=0;
for(int i=1;i<=10;i++)
{
sum+=in.nextInt();
}
System.out.println("和为:"+ sum+"\n平均数为:"+sum*1.0/10); } }- 将保存在本地机当前文件夹中的文本文件的内容在屏幕上显示出来,然后将其另存为 另一个文件。
import java.io.*; public class 二2 { public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
FileInputStream rf = new FileInputStream("C:\\WINDOWS\\win.ini");
FileOutputStream wf = new FileOutputStream("C:\\CYS\\cys.txt");
int n=1000;
byte buffer[] = new byte[n];
while((rf.read(buffer,0,n)!=-1)&&(n>0))
{
System.out.println(new String(buffer));
wf.write(buffer,0,buffer.length);
}
System.out.println();
rf.close();
wf.close(); } }
Java学习---流与文件的更多相关文章
- Java:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- java io流 对文件夹的操作
java io流 对文件夹的操作 检查文件夹是否存在 显示文件夹下面的文件 ....更多方法参考 http://www.cnblogs.com/phpyangbo/p/5965781.html ,与文 ...
- Java学习-043-获取文件在目录中的路径
我们在日常的电脑使用中,经常需要在当前目录或当期目录及其子目录中查找文件,并获取相应的文件路径名.在我们的自动化测试中,也经常需要确认文件在目录中是否成功生成或已存在,因而我写了一个小方法来实现. 获 ...
- java io流 创建文件、写入数据、设置输出位置
java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ...
- Java学习-014-文本文件写入实例源代码(两种写入方式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...
- Java学习-013-文本文件读取实例源代码(两种数据返回格式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 1.读取的文本文件内容以一维数组[LinkedList<String>]的形式返回,源代 ...
- Java学习-011-创建文件实例及源代码
此文源码主要为应用 Java 创建文件的源代码.若有不足之处,敬请大神指正,不胜感激! 创建文件的源代码如下所示: /** * @function 文件操作:创建文件.若文件不存在,则直接创建文件:若 ...
- Java学习-010-创建文件夹源代码
此文源码主要为应用 Java 创建文件目录的源码.若有不足之处,敬请大神指正,不胜感激! 创建文件夹源代码如下所示: /** * @function 文件操作:创建文件夹.若文件夹不存在,则级联创建文 ...
- Java 字符流实现文件读写操作(FileReader-FileWriter)
Java 字符流实现文件读写操作(FileReader-FileWriter) 备注:字符流效率高,但是没有字节流底层 字节流地址:http://pengyan5945.iteye.com/blog/ ...
随机推荐
- MAC安装python jupyter notebook
介绍: Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言. Jupyter Notebook 的本质是一个 Web 应用 ...
- nginx负载均衡、nginx ssl原理及生成密钥对、nginx配制ssl
1.nginx负载均衡 新建一个文件:vim /usr/local/nginx/conf/vhost/load.conf写入: upstream abc_com{ip_hash;server 61.1 ...
- Laravel学习--时间
date("Y-m-d H:i:s"); list($usec, $sec) = explode(" ", microtime()); $time = (flo ...
- SSAS aggregation 的作用及其使用
作用: 聚合是为了解决查询在运行时的效率低下,在数据立方体部署的时候进行聚合,实际上是对数据立方体的预处理,方便以后查询.如若在部署时未进行聚合,则在以后每次查询时实际上都会进行一次集合的操作,等待结 ...
- python------模块定义、导入、优化 ------->sys模块,shutil模块
1.sys模块 import sys sys.argv #命令行参数List,第一个元素是程序本身路径sys.exit(n) #退出程序,正常退出时exit(0).sys.version #获取Pyt ...
- prufer数列
涨姿势---prufer数列 一. 简介 Prufer数列是无根树的一种数列.在组合数学中,Prufer数列由有一个对于顶点标过号的树转化来的数列,点数为n的树转化来的Prufer数列长度为n-2.它 ...
- gcc的编译属性和选项
1.指定内存默认对其参数: __attribute__((packed)):按一字节对其__attribute__((aligned(n))):从此之后默认按n字节对其 例如: struct stu ...
- day44 数据库学习 索引 引用自egon 老师博客
MySQL索引管理 总结 #索引是存在硬盘中的, #索引的功能, 1.可以加速查询 2.但是他会降低写入和删除的速度 所以不能乱加索引 总结二 1 最左前缀匹配原则 2设置的索引,它的字段中的内容占空 ...
- python super()函数
super()函数是用来调用父类(超类)的一个方法 super()的语法: python 2 的用法: super(Class, self).xxx # class是子类的名称 class A(ob ...
- 修改.net core 运行端口
ASPNETCORE_URLS environment variable is ignored by "dotnet run" dotnet new web set ASPNETC ...