读取和写入mac os x.strings文件

nslocalized的Python项目详细描述


这是什么?

这是一个用于操作mac os x/ios.strings文件的python代码包, 为了支持所有的角色逃逸和 您可能希望使用的Unicode字符。

我怎么用?

要读取.strings文件:

>>> from nslocalized import StringTable
>>> st = StringTable.read('/path/to/my/Localized.strings')

或将字符串读入现有的^ {tt1} $:

>>> st.read('/path/to/my/other/Localized.strings')

要写入新的.strings文件:

>>> st.write('/path/to/my/new/Localized.strings')

默认情况下,它使用主机端的utf-16,但您可以指定编码:

>>> st.write('/path/to/my/new/Localized.strings', encoding='utf_8')

每个字符串由LocalizedString对象表示;给定字符串 文件:

/* My important string */
"Very important" = "Très important";

StringTablest

>>> ls = st.lookup('Very important')
>>> print ls.source
Very important
>>> print ls.target
Très important
>>> print ls.comment
My important string

您还可以使用:

>>> st.store(LocalizedString('One', 'Uno'))

或发表评论:

>>> st.store(LocalizedString('MB', 'Mo', 'Megabytes'))

最后,对于简单访问,可以使用[]运算符:

>>> st['GB'] = 'Go'
>>> print st['MB']
Mo

在某些情况下,您可能希望加载字符串表而不进行处理 逃逸。在这种情况下,您可以执行以下操作:

>>> st = StringTable.read('/path/to/my/Localized.strings',
process_escapes=False)

它将读取表而不进行任何转义处理。 显然,如果您阅读此表单中的表,您还需要编写它 不转义:

>>> st.write('/path/to/my/new/Localized.strings', escape_strings=False)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spinner选定值未上载到firebase数据库   java如何通过bukkit中的配置添加消息?   java在SharedReference中保存列表的泛型类型   javascript Java小程序未定义   swt在Java中构建控制台应用程序   java OAuth同意屏幕没有突然显示,没有错误?   java webview选择文件安卓不工作   java Spring boot JPA如何从同一连接添加多个数据库?   java JDBC DB2驱动程序计时器线程处于阻塞状态   java我在vscode中运行flatter时看到一个错误在phone中运行应用程序somone能否帮助我plz   Java:生成JSON:如何避免生成不完整的JSON   java Date compareTo()方法始终返回1   当使用Junit runner运行测试时,java Spring自动连线失败   java Android/Sockets如何将信息从主UI线程发送到socket线程?   java Android内存声明全局变量   java如何在JBoss中拥有多个具有相同JNDI名称的数据源?   python在Java中嵌入CPython时,为什么会挂起?   java如何提供深度模拟对象?   java“find:smallint,expected:integer”Hibernate对informix数据库的验证在短时间内失败