FAT32单文件夹最大能放多少个文件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_27508477/article/details/88355162

最近因为要用单片机做数据存储与查询,类似于数据库,后面还需要把这些数据导出到电脑。
就想着用一个txt文件存一个数据,文件命名就是对应的唯一编号。

https://feiyan35488.iteye.com/blog/953672
上帖说:

昨天在项目中遇到一个问题,这是在对网站静态化时出的问题,系统报了 File not found , 上层error 是, file or directory can’t not create
我很奇怪,反复测试了两遍一直是这个问题,突然想到是不是文件夹下的文件数量限制有问题。
我立刻写了一个小程序进行测试,果然在fat32下,创建到 16000个文件时 就抛出了异常。
这跟文件名的长短有关系,短文件名大概能创建到30000多个。
我又好奇的测试了一下ntfs下的情况,
下面 公布测试结果:
fat32 /ntfs 文件名长度 创建文件数
fat32 5 33000
fat32 16 20000
fat32 32 16000
nfts 5 >400,000 (等不下去了)
nfts 32 >247654 (等不下去了)
结论: 看来写程序还要注意os和硬件的影响

于是写了一波c#程序现在电脑上进行测试:

using System;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                if (!Directory.Exists(@"E:\Test1\")) ;
                {
                    Directory.CreateDirectory(@"E:\Test1\");
                }
                for (int i = 0; i < 65600; i++)
                {
                    string fileName = String.Format("{0:00000000000000000000}", i); // -> 04
                    File.AppendAllText(@"E:\Test1\" + fileName + ".txt", fileName);
                    Console.WriteLine(File.ReadAllText(@"E:\Test1\" + fileName + ".txt"));
                }
            }
            catch(Exception e)
            {
                Console.WriteLine(e.Message.ToString());
            }
            Console.ReadKey();
        }
    }
}

E盘是我的sd卡,用的读卡器。

第一次先在Test文件夹下创建文件。
在这里插入图片描述
成功创建并写入了21843个文件。
在这里插入图片描述

再创一个文件夹Test1,跑一次。
在这里插入图片描述
在这里插入图片描述
但是看sd卡属性占用空间,emm……就很不懂了。
在这里插入图片描述

再试试创文件夹:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_27508477/article/details/88355162