Java IO

1、file类

             file类的构造方法:
public Flie(String pathname) -->实例化Flie类的时候,必须设置好路径。
如:Flie f = new Flie("d:\\test.txt");

(1)Windows中使用反斜杠表示目录的分隔符。

(2) Linux中使用正斜杠表示目录的分隔符。

Flie类主要方法:

2、字节流与字符流

Java IO的操作流程:

(1)使用Flle类打开一个文件。

(2)通过字节流和字符流的子类指定输出的位置。

(3)进行读和写的操作。

(4)关闭输入和输出。

字节流

字节输出流:OUtputStream

OutputStream是一个抽象类,因此需要通过子类FileOutputStream实例化对象,才能够使用它。

常用方法:

public void write(int b) throws IOException:

一次写一个字节    b- 要写入的字节。

public void write(byte[] b) throws IOException:

一次写一个字节数组

public void write(byte[] b, int off,int len) throws IOException:

一次写一部分字节数组

public void close()throws IOException

关闭此文件输出流并释放与此流有关的所有系统资源。此文件输出流不能再用于写入字节。

字节输入流:

它与OutputStream一样,需要通过子类FlieInputStream实例化对象。

常用方法:

字符流

字符输出流:Writer

它也是一个抽象类,需要通过子类FlieWriter实例化对象。

常用方法:

字符输入流:Reader

同样是一个抽象类,需要通过子类FlieReader实例化对象。

常用方法:

public int read() throws IOException

读取单个字符。

作为一个整数(其范围从 0 到 65535 (0x00-0xffff))读入的字符,如果已到达流末尾,则返回 -1

public int read(char[] cbuf) throws IOException

一次读取一个字节数组

cbuf - 目标缓冲区

读取的字符数,如果已到达流的末尾,则返回 -1

public void close() throws IOException

关闭该流并释放与之关联的所有资源。

public String readLine() throws IOException

读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行。

包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null

课堂作业

实验代码

package 课堂作业;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.Reader;
import java.io.Writer;
import java.util.Scanner; public class Main {
public static void main(String[] args) throws Exception {
String pathname="D:"+File.separator+"课堂作业"+File.separator+"作业.txt";
aFormatA(pathname);
}
public static void aFormatA(String pathname) throws Exception {
File file=new File(pathname);
Reader input=new FileReader(file);
Writer out=new FileWriter(file,true);
int z;
out.write('\n');
String str="字母大写";
out.write(str);
out.write('\n');
while(true){
if((z=input.read())!=-1){
if(z>=97&&z<=122){
z=z-97+'A';
}
out.write(z);
}
else {
break;
}
}
input.close();
out.close();
} }
package 课堂作业;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream; public class Main1{
public static void main(String[] args) throws Exception{
String pathname="D:"+File.separator+"课堂作业"+File.separator+"作业.txt";
aFormatA(pathname);
}
private static void aFormatA(String pathname) throws Exception{
File file =new File(pathname);
InputStream input=new FileInputStream(file);
OutputStream out=new FileOutputStream(file,true);
byte[] b=new byte[(int)file.length()];
int i=0;
int z;
while(true){
if((z=input.read())!=-1){
if(z<=122&&z>=97){
z=z-97+'A';
}
b[i]=(byte)z;
i++;
}
else{
break;
}
}
out.write("\n字母大写\n".getBytes());
out.write(b);
input.close();
out.close();
} }

实验截图与代码截图

第十周java总结的更多相关文章

  1. 第十周java学习总结

    目录 第十周java学习总结 学习内容 代码上传截图 代码链接 第十周java学习总结 学习内容 第12章 Java多线程机制 主要内容 Java中的线程 Thread类与线程的创建 线程的常用方法 ...

  2. 20175215 2018-2019-2 第十周java课程学习总结

    第十二章 Java多线程机制 12.1 进程与线程 12.1.1 操作系统与进程 程序是一段静态的代码,它是应用软件执行的蓝本. 进程是程序的一次动态执行过程,它对应了从代码加载.执行至执行完毕的一个 ...

  3. 第十周Java实验作业

    实验十  泛型程序设计技术 实验时间 2018-11-1 1.实验目的与要求 (1) 理解泛型概念: 泛型:也称参数化类型,就是在定义类,接口和方法时,通过类型参数只是将要处理的类型对象.(如Arra ...

  4. 第十周java 学习总结

    20145306 java的网络编程 网络概述 网络编程技术是当前一种主流的编程技术,随着联网趋势的逐步增强以及网络应用程序的大量出现,所以在实际的开发中网络编程技术获得了大量的使用.至于以后的实际修 ...

  5. 20145307第十周JAVA学习报告

    教材学习内容总结 Java的网络编程 1.计算机网络概述 (1)路由器和交换机组成了核心的计算机网络,计算机只是这个网络上的节点以及控制等,通过光纤.网线等连接将设备连接起来,从而形成了一张巨大的计算 ...

  6. Java 第十周学习总结

    20145113<Java程序设计>第十周学习总结 基础知识 1.网络通讯的方式主要有两种 TCP(传输控制协议)方式:需要建立专用的虚拟连接以及确认传输是否正确 UDP(用户数据报协议) ...

  7. 20145213《Java程序设计》第十周学习总结

    20145213<Java程序设计>第十周学习总结 教材学习总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接 ...

  8. 21045308刘昊阳 《Java程序设计》第十周学习总结

    21045308刘昊阳 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据. 狭义的网络编程范畴:程序员所作的事情 ...

  9. 20145330第十周《Java学习笔记》

    20145330第十周<Java学习笔记> 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就 ...

随机推荐

  1. Django + pyecharts 实现数据可视化

    1 创建django项目 :Visualization and  APP :Demo >>django-admin startproject Visualization >>p ...

  2. WDigest

    WDigest 是windows在XP系统中应用的,其作用主要是与超文本传输协议(HTTP)和简单的身份验证安全层(SASL)一起交换使用.而Digest与NTLM协议类似,也是挑战认证协议. 简单说 ...

  3. 【leetcode】LCP 2. 分式化简

    题目如下: 有一个同学在学习分式.他需要将一个连分数化成最简分数,你能帮助他吗? 连分数是形如上图的分式.在本题中,所有系数都是大于等于0的整数. 输入的cont代表连分数的系数(cont[0]代表上 ...

  4. 一种sql优化方案

    --select @type3Count=count(1) from TWEB_ALogisticsYD bb -- LEFT JOIN dbo.TWEB_BCompanyJJ as B3 WITH( ...

  5. 将springboot jar应用打包成镜像并在docker运行成容器

    先看一下我的Dockerfile内容与服务器中的目录结构 上面 yibai-0.0.1-SNAPSHOT.jar 为springboot应用打成的jar包,Dockerfile为将应用打成镜像的配置文 ...

  6. Git 下拉项目

    1.[VCS]> [Checkout  from  Version  Control] >  [Git] 2.项目Git路径 > [Clone]

  7. MCMC

    MCMC MCMC算法的核心思想是我们已知一个概率密度函数,需要从这个概率分布中采样,来分析这个分布的一些统计特性,然而这个这个函数非常之复杂,怎么去采样?这时,就可以借助MCMC的思想. 它与变分自 ...

  8. HDU 6071 Lazy Running (最短路)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=6071 题解 又是一道虐信心的智商题... 首先有一个辅助问题,这道题转化了一波之后就会化成这个问题: ...

  9. JS框架_(JQuery.js)纯css3进度条动画

    百度云盘 传送门 密码:wirc 进度条动画效果: <!DOCTYPE html> <html lang="zh"> <head> <me ...

  10. HDU 5793 A Boring Question (找规律 : 快速幂+逆元)

    A Boring Question 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5793 Description Input The first l ...