字节流 InputStream OutputStream

Scanner类和nextLine()方法import java.util.Scanner;/* * Scanner类,用于从控制台输入数据,字节输入流 * next()方法 * 1.对输入有效字符之前的输入的空格、tab、回车等,会自动忽略 * 2.只有在输入有效字符后,才会将空格、tab、回车作为结束符 * 3.无法获取带有空格的字符串 * * nextLine()方法 * 1.结束符只有回车,即返回回车之前所有的字符 * 2.可以获取带有空格的字符串 * 3.实现一次读取一行 */public class Test02 {(String[] args) {Scanner input=new Scanner(System.in);System.out.println(“请输入数据:”);//String data=input.next();String data=input.nextLine();System.out.println(“数据:”+data);System.out.println(“长度:”+data.length());}}InputStream字节输入流/* * InputStream字节输入流 * int read() * System.in 标准输入流,默认为键盘 * System.out标准输出流,默认为显示器 */public class Test03 {(String[] args) {try {InputStream is=System.in;//定义一个字节输入流System.out.println(“请输入数据:”);System.out.print((char)data);//转换为字符并输出,如果是中文会出现乱码data=is.read();//接着读取数据}is.close();//关闭流} catch (IOException e) {e.printStackTrace();}}}import java.io.IOException;import java.io.InputStream;/* * InputStream类 * int read(byte[] b) */public class Test04 {(String[] args) {InputStream is = null;try {// 定義一個字節輸入流is = System.in;[100];System.out.println(“请输入数据:”);// 将数据读到字节数组中,返回实际读取的字节数int num = is.read(buffer);System.out.println(“实际读取的字节数:” + num);// 输出字节数组中的数据for (byte b : buffer) {System.out.println(b + “=” + (char) b);}//将字节数组转换为字符串System.out.println(“*****直接转换整个字节数组”);String str=new String(buffer);System.out.println(“字符串:”+str);System.out.println(“长度:”+str.length());System.out.println(“*****转换指定长度的字节数组”);String str2=new String(buffer, 0, num);//将字节数组转换为字符串,从第0个开始,转换num个System.out.println(“字符串:”+str2);System.out.println(“长度:”+str2.length());} catch (IOException e) {e.printStackTrace();} finally {try {is.close();// 关闭流} catch (IOException e) {e.printStackTrace();}}}}FileInputStream文件字节输入流import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/* * FileInputStream文件字节输入流,继承自InputSteam */{(String[] args) throws IOException {test3();}() throws IOException {// File file = new File(“d:\\Java\\hello.txt”);// FileInputStream fis = new FileInputStream(file);FileInputStream fis = new FileInputStream(“d:\\Java\\hello.txt”);int data = fis.read();// 如果读到文件末尾,返回-1while (data != -1) {// 判断是否读取到数据System.out.println((char) data);data = fis.read();// 继承读取}fis.close();// 关闭流}() throws IOException {FileInputStream fis = new FileInputStream(“d:\\Java\\hello.txt”);byte[] buffer = new byte[10];int num = fis.read(buffer, 0, buffer.length);while (num != -1) {String str = new String(buffer, 0, num);// 将字节数组转换为字符串System.out.println(str);num = fis.read(buffer, 0, buffer.length);}fis.close();}() throws IOException {FileInputStream fis = new FileInputStream(“d:\\Java\\hello.txt”);System.out.println(“当前文件输入流大小:”+fis.available());byte[] buffer = new byte[fis.available()];fis.read(buffer);//将数据读取到字节数组buffer中System.out.println(new String(buffer));fis.close();}}FileOutputStream文件字节输出流import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/* * FileOutputStream文件字节输出流,继承自OutputStream */{(String[] args) throws IOException {File file=new File(“D:\\Java\\itany.txt”);//创建一个FileOutputStream实例,默认会覆盖原文件的内容FileOutputStream fos=new FileOutputStream(file,true);[] info=”哈哈哈哈”.getBytes(“utf-8”);fos.write(info);fos.flush();//刷新缓冲区,,写入数据fos.close();System.out.println(“写入数据成功!”);}}文件的复制import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;/* * 文件的复制 */{(String[] args) {test2();}() {// 定义文件输入输出流FileInputStream fis = null;FileOutputStream fos = null;try {fis = new FileInputStream(“D:\\Java\\hello.txt”);fos = new FileOutputStream(“D:\\Java\\world.txt”);int data = -1;while ((data = fis.read()) != -1) {fos.write(data);// data=fis.read();}fos.flush();System.out.println(“文件复制成功”);} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {fos.close();fis.close();} catch (IOException e) {e.printStackTrace();}}}() {// 定义文件输入输出流FileInputStream fis = null;FileOutputStream fos = null;try {fis = new FileInputStream(“D:\\Java\\hello.txt”);fos = new FileOutputStream(“D:\\Java\\world.txt”);byte[] buffer=new byte[10];int num=fis.read(buffer);while (num!= -1) {fos.write(buffer,0,num);num=fis.read(buffer);}fos.flush();System.out.println(“文件复制成功”);} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {fos.close();fis.close();} catch (IOException e) {e.printStackTrace();}}}}

我们一直在旅行,一直在等待某个人可以成为我们旅途的伴侣,

字节流 InputStream OutputStream

相关文章:

你感兴趣的文章:

标签云: