【问题标题】:Why can't file names in the drawable folder contain special characters or start with a capital letter?为什么可绘制文件夹中的文件名不能包含特殊字符或以大写字母开头?
【发布时间】:2011-07-20 07:09:37
【问题描述】:

这些规则有什么意义吗?

【问题讨论】:

    标签: android naming drawable


    【解决方案1】:

    文件夹中的每个文件都被翻译成R.java类中的java字段名:

    drawable\icon.png -> R.drawable.icon
    

    因此不在文件名中使用特殊字符的原因,因为它们不能在 Java 名称中使用。

    至于大写字母,我想这是为了避免在 Windows 与 Linux 环境中出现一个小问题。那是因为Linux认为Icon.pngicon.png是不同的文件,而Windows认为Icon.pngicon.png是同一个文件。因此,任何使用 Linux 的人都可以创建在 Windows 上无法编译的应用程序。

    【讨论】:

    • 我认为这不是真的。 Java 在内部以 UTF-16 存储字符串。如果您愿意,您甚至可以用普通话编写您的 Java 应用程序。
    • Strings 和 UTF-16 与文件名和文件名中的特殊符号有什么关系?
    • 我指的是“因此不在文件名中使用特殊字符的原因,因为它们不能在 Java 名称中使用。”陈述。这根本不是真的。您可以在 Java 标识符中使用各种特殊字符。
    • 是的,我刚刚意识到我的评论没有任何意义。我实际上是指 Java 标识符,而不是存储为 String 类型的值。
    【解决方案2】:

    你可以看到一些关于这个的讨论,Here

    【讨论】:

      猜你喜欢
      • 2016-08-15
      • 2014-09-07
      • 2021-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-21
      • 1970-01-01
      相关资源
      最近更新 更多