Java二进制以及TXT文件操作

Java二进制以及TXT文件操作

TXT文件操作

创建txt文件,并将内容写入txt文件

public static void SaveText() throws IOException{
		String name="zzz";
		String Myclass="软件工程";
		String ID="2017211";
		
		File file=new File(".\\name.txt");
		FileWriter fw=new FileWriter(file);
		if(!file.exists()){
			 file.createNewFile();
		}
		if(file.exists()){
			fw.write(name);
			fw.write(Myclass);
			fw.write(ID);
			fw.close();
		}
		
	}

二进制文件操作

将数据存入二进制文件

public static void writeFSList(int[] a) throws IOException{
		File file=new File(".\\test.dat");
		if(!file.exists()){
		 DataOutputStream os = new DataOutputStream(  
                   new BufferedOutputStream(new FileOutputStream(file))); 
		 for(int i=0;i<a.length;i++){
			 os.writeInt(a[i]); 
		 }
		  
		   os.flush();  
           os.close();  
		try {
			file.createNewFile();
			FileOutputStream fos=new FileOutputStream(file);
			ObjectOutputStream oos=new ObjectOutputStream(fos);
			for(int i=0;i<a.length;i++){
				oos.write(a[i]);
			}
			 System.out.println("文件已存入");
				 oos.close();
				 fos.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

将数据从二进制文件中读出

public ArrayList<q2> outQ2Object() throws IOException{
		 BufferedInputStream bufferInput = null;
         DataInputStream dataInput = null;
         ArrayList<q2> studentouts = new ArrayList<q2>();
         try {
             bufferInput = new BufferedInputStream(
                     new FileInputStream(".\\q2.dat"));

             dataInput = new DataInputStream(bufferInput);
             int size = dataInput.readInt();
             
             for (int i = 0; i < size; i++) {
                 q2 student = new q2();
                 student.ID=dataInput.readInt();
                 student.AverageGrade=dataInput.readDouble();
                 student.PerforScore=dataInput.readDouble();
                 student.overallScore=dataInput.readDouble();
                 
                 studentouts.add(student);
             }
             printQ2(studentouts);

         } catch (IOException e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
         } finally {
         	dataInput.close();
         }
         return studentouts;

	}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将Java十六进制txt文件转换bin文件,可以按照以下步骤进行操作: 第一步,读取txt文件。使用Java文件输入流(FileInputStream)来读取txt文件中的内容,并将其保存到一个字符串中。 第二步,将十六进制字符串转换字节数组。可以使用Java的字符串方法substring和Integer类的parseInt方法,将字符串中的每两个字符解析为一个十六进制数,并将其转换字节数组。 第三步,写入字节数组到bin文件中。使用Java文件输出流(FileOutputStream)来写入字节数组到bin文件中。 下面是一个示例代码实现: ```java import java.io.*; public class HexToBinConverter { public static void main(String[] args) { String filePath = "hex.txt"; // txt文件路径 String outputFilePath = "binary.bin"; // bin文件输出路径 try { // 读取txt文件 BufferedReader br = new BufferedReader(new FileReader(filePath)); String hexString = br.readLine(); // 将十六进制字符串转换字节数组 byte[] byteArray = new byte[hexString.length() / 2]; for (int i = 0; i < hexString.length(); i += 2) { String hex = hexString.substring(i, i + 2); byteArray[i / 2] = (byte) Integer.parseInt(hex, 16); } // 写入字节数组到bin文件 FileOutputStream fos = new FileOutputStream(outputFilePath); fos.write(byteArray); // 关闭流 br.close(); fos.close(); System.out.println("转换功!"); } catch (IOException e) { e.printStackTrace(); } } } ``` 以上是一个简单的示例代码,通过读取txt文件中的十六进制字符串,并将其转换字节数组,并将字节数组写入到bin文件中。要使用该代码,请将`filePath`变量设置为输入txt文件的路径,将`outputFilePath`变量设置为输出bin文件的路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值