欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

安卓文件名最大长度限制

程序员文章站 2022-04-06 08:21:24
...

创建文件时,遇到一个异常:

System.err: java.io.IOException: File name too long
2019-11-06 11:14:24.984 14584-17083/com.example.filenamelenlimit W/System.err:     at java.io.UnixFileSystem.createFileExclusively0(Native Method)
2019-11-06 11:14:24.984 14584-17083/com.example.filenamelenlimit W/System.err:     at java.io.UnixFileSystem.createFileExclusively(UnixFileSystem.java:281)
2019-11-06 11:14:24.984 14584-17083/com.example.filenamelenlimit W/System.err:     at java.io.File.createNewFile(File.java:1000)
2019-11-06 11:14:24.984 14584-17083/com.example.filenamelenlimit W/System.err:     at com.example.filenamelenlimit.MainActivity$1$1.run(MainActivity.java:47)
2019-11-06 11:14:24.984 14584-17083/com.example.filenamelenlimit W/System.err:     at java.lang.Thread.run(Thread.java:784)

显然,是文件名过长导致的。那么,安卓文件系统支持的最大文件名称长度是多少呢?今天特地做了个测试。

测试机型:

  • 华为麦芒7,安卓 8.1.0 系统,EMUI 8.2.0;
  • 华为 Mate 9 pro,安卓 9 系统,EMUI 9.1.0 系统;

测侧结果如下:
如果为英文字符,最多为255个,包括短横线连接符 - 。
如果为纯汉字,最多为 85 个汉字,是 255 的 1/3,说明每个汉字占 3 个字节。
即,文件名称长度不可超过 255 个字节。