Python中文网

一个关于 编程问题的解答网站.

有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java创建一个。从头开始的txt文件

我正在研究一个微控制器,我正试图将一些传感器的数据写入到计算机中。txt文件存储在sd卡上,然后将sd卡放入读卡器中,并在PC上读取数据

有人知道如何写一篇文章吗。FAT32文件系统从头开始的txt文件?我没有任何预定义的代码/方法/函数可调用,我需要从零开始创建代码

这不是特定编程语言的问题,这就是为什么我标记了多个。我可以稍后将代码从C或Java转换为我选择的编程语言。但我似乎在任何类型的语言中都找不到如此低级的方法/函数:)

有什么想法吗


共 (2) 个答案

  1. # 1 楼答案

    FatFs非常好,并且高度可移植。它支持FAT12、FAT16和FAT32、长文件名、查找、读取和写入(大多数这些功能都可以打开和关闭以更改内存占用)
    如果您的内存非常紧张,那么也有一些小FATF,但默认情况下它没有写支持,添加它需要一些工作

    mounting驱动器之后,您只需open创建一个文件即可。例如:

    FATFS fatFs;
    FIL newFile;
    
    // The drive number may differ 
    if (f_mount(0, &fatFs) != FR_OK) {
      // Something went wrong
    }
    
    if (f_open(&newFile, "/test.txt", FA_WRITE | FA_OPEN_ALWAYS) != FR_OK) {
      // Something went wrong
    }
    

    如果确实需要仅使用自己的代码创建文件,则必须遍历FAT,查找空白,然后创建新的LFN条目(存储文件名的位置)和目录(指定磁盘上保存文件数据的集群)
    我看不出有任何理由这样做,除非这是某种家庭作业/实验室练习。在任何情况下,你都应该先做一些reading about the FAT structure,然后在开始后返回一些更具体的问题

  2. # 2 楼答案

    在JAVA中,您可以这样做

    Writer output = null;
    String text = "This is test message";
    File file = new File("write.txt"); 
    output = new BufferedWriter(new FileWriter(file));
    output.write(text);
    output.close();  
    System.out.println("Your file has been written");