背景

最近在处理Android 11读写权限时,萌生了个偏门想法,在公有目录下创建文件,使用文件的文件名信息使得不同app之间共享数据

问题

在给文件命名时,出现了以下报错

System.err: java.io.IOException: File name too long

文件名太长

分析

查看Linux源码,我们知道

#ifndef _LINUX_LIMITS_H
#define _LINUX_LIMITS_H
#define NR_OPEN 1024
#define NGROUPS_MAX 65536
#define ARG_MAX 131072
#define LINK_MAX 127
#define MAX_CANON 255
#define MAX_INPUT 255
#define NAME_MAX 255
#define PATH_MAX 4096
#define PIPE_BUF 4096
#define XATTR_NAME_MAX 255
#define XATTR_SIZE_MAX 65536
#define XATTR_LIST_MAX 65536
#define RTSIG_MAX 32
#endif

Linux内核对命名的最大字符长度是255

验证

使用长度为256个字符【如a】去命名,发现依然是报上述的错误;

使用255个则不会出现长度过长的错误

同理目录的命名最大长度也是255【只是他很坑不会出现像文件命名太长的错误,出现异常情况也只能连猜带蒙】

总结

文件或目录的最大长度是255

路径的最大长度是4096

Android 文件命名最大长度限制相关推荐

  1. Android转载一:Android文件命名规范

    REF:http://blog.csdn.net/gulianchao/article/details/23391651 (一)  Layout命名 1.contentview命名:activity_ ...

  2. Android文件命名规范

    注:很简略很实用的一点总结: 资源控件命名 仅供参考,只要形成一个统一,见量知其意就可 程序员的水平,看代码规范最直接了.也就是工资的高低和你的代码质量成正比的,养成良好习惯吧!! (一)Layout ...

  3. Android文件命名规范初版

    这个是老黄总结的,我搬了上来记录留着一下 资源命名规则: (一)  Layout命名 1.contentview命名:activity_功能模块_属性说明.xml 例如:activity_main.x ...

  4. android读取文件字符串长度,Android中最大文件名长度

    我正在尝试为正在创建的文件命名. 我只想知道 Android中最大文件名长度是多少? 有文件名规范吗? 我可以使用-或>之类的字符吗? 在Android上使用超过127字节的标签显然是不安全的. ...

  5. Android语言国际化values资源文件命名规则

    今天,简单讲讲 android 里如何将语言国际化,和各个国家语言的value文件夹的命名规则. 昨天,需要将app的字符资源国际化,可是却不知道如何命名,在网上找了资料,终于解决了问题. Andro ...

  6. 百度android代码命名规范

    代码规范 1.     简介 A.    目的 本文提供一整套编写高效可靠的 Java 代码的标准.约定和指南.它们以安全可靠的软件工程原则为基础,使代码易于理解.维护和增强.而且,通过遵循这些程序设 ...

  7. Android代码命名规范

    目录 目录 1.为什么 规范 Android 代码命名? 2.Android需要命名的代码(对象)有哪些? 3.具体命名规范 3.1.包 3.2.类 3.3.变量 3.4.方法 3.5.参数名 3.6 ...

  8. 简述计算机文件的命名办法,如何进行文件命名-如何进行文件管理

    如何进行文件命名-如何进行文件管理 电脑的管理事实上就是文件和文件夹的管理.想要我们的电脑干净整齐,就需要我们正确的进行文件管理.我们知道了文件和文件夹的概念之后,现在我们再来看看单独的文件,认识一下 ...

  9. 【转】Android - 文件读写操作 总结

    Android - 文件读写操作 总结 原文出处:http://blog.csdn.net/ztp800201/article/details/7322110 在android中的文件放在不同位置,它 ...

最新文章

  1. ACMNO.25 C语言-间隔输出 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出1 9 9 0。 输入 一个四位数 输出 增加空格输出
  2. 编码(人类与机器间的语言)中
  3. matlab矩阵乘法与打印
  4. APT 信息收集——shodan.io ,fofa.so、 MX 及 邮件。mx记录查询。censys.io查询子域名。...
  5. VTK:图像拉普拉斯算子用法实战
  6. 内联函数和编译器对Go代码的优化
  7. Java Learning Path(三)过程篇
  8. robot framework好的学习网址
  9. Python调用shell命令方式
  10. Atitit. 二进制数据ascii表示法,与base64编码解码api 设计标准化总结java php c#.net
  11. ESP32-cam 初体验 从esp32-cam的购买到局域网监控的实现
  12. 为什么int类型(16位)的下溢下限为-32768而上溢上限却是32767
  13. 长城汽车携旗下哈弗、欧拉、长城皮卡及WEY登陆北京车展
  14. 网上看到的!!很值得欣赏~~(没耐…
  15. 奇怪的日常 [ 1 ]:个人微信如何实现自动回复
  16. ABAQUS均匀受力,边界条件对称,但结果云图不对称
  17. html调用手机陀螺仪,前端基于THREE.js的3D全景,支持鼠标控制和手机陀螺仪的切换...
  18. 力扣(LeetCode)159. 至多包含两个不同字符的最长子串(2022.06.08)
  19. php laravel 开发工具,Laravel 快速开发工具
  20. 脑电病理波资料统计-----异常脑波的分类诱发实验

热门文章

  1. Android吹风车效果
  2. Vue项目中使用Echarts地图(精确到区)
  3. spring boot 爬取艺龙所有评论数据
  4. 开始做mvc 框架 家庭理财项目。
  5. 【性能】【内存】低内存回收解读
  6. 快商通推出智能人机对话平台KICP,0代码小样本打造对话机器人
  7. 你懂黑客吗?黑客!=cracker
  8. Windows智能卡登录系统网络版,服务器集中管理
  9. 寒冬下,这些创始人选择裁掉自己让公司活下去
  10. 游戏服务器腾讯云比较好高IO大带宽BGP高速网络低延时