「java实验io」Java实验报告
本篇文章给大家谈谈java实验io,以及Java实验报告对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
关于java中的io操作 新手有些不懂
String str="helloworld";
//将str转换成字节数组输入流中
ByteArrayInputStream bis=new ByteArrayInputStream(str.getBytes());
//输出流
ByteArrayOutputStream bos=new ByteArrayOutputStream();
int temp=0;//因为每次read读的都是数量,所以是int类型
while((temp=bis.read())!=-1){
//bis.read();是读输入流里面的字节,返回的是读的数量,给了temp。读完这个下次循环自动读下一个字节。读到未,读不到了,就返回-1.所有while在-1是停止循环
char c=(char)temp;//将读到的字节转换成字符,一个英文一个字节
bos.write(Character.toLowerCase(c));
//读到的字节转成小写的字节写到输出流里面(toUpperCase才是大写)
}
String newStr=bos.toString();//将输出流数组里面的字节给newStr
bis.close();//关闭流
bos.close();//关闭流
System.out.println(newStr);//打印
java Io 测试,如下:
你那句:fos.write(b, 0, b.length); 有问题, 应该换成 fos.write(b, 0, temp);
你的int temp = fis.read(b, 0, b.length); 这句返回的temp就是每次读到的长度.
OutputStream 的write(byte[] b, int off, int len);这个方法, 意思是把b这个数组中从第off个开始往后的len个长度写到输出流.
关于int temp = fis.read(b, 0, b.length); 这句话,
在fis读最后一次的时候, 读到的实际长度不一定是你数组定义的长度
你可以想象一下fis读最后两次
假如倒数第二次读到的是 [0, 1, 1, 0, 1, 1, 0] // 假如这就是你定义的1024长度数组
最后一次读的升序不够1024, 比如只读了三个, 此时b 就是 [1, 1, 0, 0, 1, 1, 0] // 注意后边四个扔是上一次读到的值.
你本应该把fis读到的前三个长度(也就是你的temp变量那么多个)写到fos里, 而实际上你把整个数组(也就是你的b.length)全写了,你多写了好多,所以to.txt比from.txt长度大.
你要把InputStream每次所读到的实际长度的写到OutputStream里,而不是盲目地把整个数组都写出去。
我感觉我说得有点罗嗦, 不知道给你说明白没有。不懂的可以给你再解释。
最后一定要fos.close(); fis.close();
Java io编写
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class Jie {
public static void main(String [] args) throws IOException{
File file=new File("C:\\Users\\Administrator.ZJ2IWINY6JJYMTT\\Desktop\\2.txt");
InputStream isr=new FileInputStream(file);
int r=isr.read();
String result="";
while(r!=-1){
result=result+(char)r;
r=isr.read();
}
String sp[]=result.split(",");
System.out.print(sp[11]);
isr.close();
}
}
第二题:
import java.util.Scanner;
public class UpCase {
public static void main(String [] args){
Scanner input=new Scanner(System.in);
System.out.print("请输入字母:");
String a=input.next();
String b=a.toUpperCase();
System.out.print(b);
}
}
第三题:那个编码表是啥意思?
关于java实验io和Java实验报告的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。