安卓文件名最大長度限制

創建文件時,遇到一個異常:

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 個字節。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章