📄 writeutf.java
字号:
package WriteUTF;
import java.io.*;
public class WriteUTF{
public static void main(String args[])throws Exception{
if(args.length!=3){
System.out.println("wrong parameter");
String destination=args[0];
read(destination);
}else{
//原文件名
String source=args[0];
//第一个string的长度
int num=Integer.parseInt(args[1]);
//输出文件名
String destination=args[2];
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(source)));
DataOutputStream dos=new DataOutputStream(new FileOutputStream(destination,true));//表示的是接到文字的后面
String line;
dos.writeShort(num);
while((line=br.readLine())!=null){
if(line.length()<=2){
dos.writeUTF(line);
}else{
String temp=line.substring(0,2);
if(temp.equals("//")){
System.out.println("aaaaaaaaaaaaaaa "+line.substring(2,line.length()));
dos.writeShort(Integer.parseInt(line.substring(2,line.length())));
}else{
dos.writeUTF(line);
System.out.println(line);
}
}
}
dos.flush();
dos.close();
br.close();
//read(destination);
}
}
public static void read(String destination)throws Exception{
DataInputStream dis=new DataInputStream(new FileInputStream(destination));
readString(dis);
readString(dis);
readString(dis);
readString(dis);
int cnt=dis.readShort();
System.out.println("nums :: "+cnt);
for(int i=0;i<cnt;i++){
readString(dis);
}
}
public static String[] readString(DataInputStream dis)throws Exception{
int num=dis.readShort();
System.out.println("nums : "+num);
String []s=new String[num];
for(int i=0;i<num;i++){
s[i]=dis.readUTF();
System.out.println(i+" : "+s[i]);
}
return s;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -