美文网首页
iOS 国际化.Strings文件自动生成

iOS 国际化.Strings文件自动生成

作者: Kpengs | 来源:发表于2023-10-10 13:15 被阅读0次

前言

公司最近做了国际化功能,在开会的时候,同事提出了是否可以进行自动化生成国际化文件,而不是一个个粘贴复制,于是去做了一些调研。整理了一些方案

实际方案

方案一 三方工具

这是朋友自己写的一款Mac App 用于批量导出国际化文件
用法在App里有
https://apps.apple.com/cn/app/pod-publisher/id6443565431?mt=12

方案一 自己通过python实现转换

1.用Excel建立格式化的csv文件

例如


image.png

2.编写python代码

import csv

def generate_strings_file(csv_file_path, output_path_base):
    with open(csv_file_path, newline='', encoding='utf-8') as csvfile:
        reader = csv.reader(csvfile)
        header = next(reader)  # Get the header row

        # Map languages to column indices
        languages = {"English": header.index("English"), "Chinese": header.index("Chinese")}

        for language, language_column in languages.items():
            output_path = f"{output_path_base}_{language.lower()}.strings"
            with open(output_path, 'w', encoding='utf-8') as output_file:
                for row in reader:
                    key = row[0]
                    translation = row[language_column]
                    output_file.write(f'"{key}" = "{translation}";\n')
                csvfile.seek(0)  # Reset file pointer for the next language

if __name__ == "__main__":
    generate_strings_file("fanyiTest.csv", "Localizable")

3.将python代码和csv放在同一目录

cd 到该目录
执行

python3 generate_strings.py

然后就会生成中英文的String格式的文件了


image.png

相关文章

  • iOS 国际化

    iOS 国际化 创建 Localizable.strings 文件1.Localizable.strings 这个...

  • iOS 语言国际化配置

    所谓的iOS 国际化,就是根据系统不同的语言自动切换。首先,如图: 创建一个.strings文件,以“Locali...

  • iOS开发 ipa包中国际化语言文件解析

    iOS开发 ipa包中国际化语言文件解析(Localizable.strings或者InfoPlist.strin...

  • iOS 国际化bug总结

    前言 首次接触iOS国际化,创建了Localizable.strings 文件之后,就开始在Localizable...

  • InfoPlist

    iOS 设置国际化的时候,必须将strings文件命名为InfoPlist,要不然国际化是没有用的。

  • 2018-03-14: iOS 国际化 检测格式是否正确

    plutil Localizable.strings 命令行 iOS国际化的Localizable.strings...

  • 关于iOS 的多语言适配问题

    关于iOS 的国际化适配,主要有以下几点: 一、语言适配 Localizable.strings文件 该文件主要用...

  • iOS 国际化 检测格式是否正确

    iOS国际化的Localizable.strings里的键值对,有时格式不正确,但是Xcode又不自动提醒,可以使...

  • iOS国际化

    内容、APP名称国际化文件Localizable.strings, InfoPlist.strings文件名一定不能错。

  • iOS 国际化

    最近在搞iOS国际化,看了很多简书都不够完善,今天就来分享一下经验 先建立Strings File 文件

网友评论

      本文标题:iOS 国际化.Strings文件自动生成

      本文链接:https://www.haomeiwen.com/subject/ofiwbdtx.html