在我正在構建的應用程序中,我使用了多種語言。通過添加一個新文件夾(例如:values-fr)並在其中添加一個新的strings.xml文件,很容易在應用程序中添加不同的語言。但我有很大的文本文件(完整的文章),我需要添加。這些文章也用不同的語言編寫。什麼是將它們添加到我的應用程序的最佳方式?在Android中使用不同語言的大文本文件
1
A
回答
4
我會考慮使用res/raw-<qualifiers>
作爲資產的替代方案。 raw
文件夾可以存儲任意文件 - 他們 - 你猜對了 - 原始形式。
res/raw-fr
res/raw-en
原始資源然後可以打開通過在資源調用openRawResource(int id)
:例如,「你好世界」的文章寫的法語和英語,會下儲存對象,類似於它爲其他資源(如drawables,strings等)工作的方式。框架生成的id將採用熟悉的格式R.raw.filename
(不帶文件擴展名)。
使用這種方法的好處是您可以充分利用Android的本地化系統,這意味着作爲開發人員您基本上不必擔心任何這些。您還可以輕鬆添加更多限定符以進一步過濾設備特徵(例如,屏幕大小,密度,平臺版本等 - see here for a full overview)。缺點是它對原始文件名/擴展名施加了一些限制,並且不支持適當的文件夾/文件層次結構。
'更好'的方法(/原始vs /資產)可能取決於您的項目需求。
3
我可能會使用資產 - 即創建assets/data/fr/,並將fr文件存儲在那裏。請注意,資產需要明確提取 - 這可能是好的,因爲您可以節省內存只有一組文章安裝。
另一種可能性是將所有內容放置在http服務器上,從而使保持和訪問文章別人的問題:)。
順便說一句,如果你的文件真的很大,你將不得不安裝沒有它們的應用程序,並在以後下載文章。 (對apk大小有限制。)
相關問題
- 1. 兩種不同語言的android語言文件夾
- 2. 選項在android中查看不同語言的文本?
- 3. 波斯語言在android中的文本
- 4. 對Android中的不同(特定)語言使用相同的值文件夾
- 5. 如何在不同語言的Android環境中加載不同的html文件?
- 6. 如何在android中使用不同的文本大小集?
- 7. Android中的文本語言翻譯
- 8. android不同語言的單個文本視圖
- 9. Android - 使用語言在文檔中不可用
- 10. 爲不同語言設置info.plist文件
- 11. 在python中清理屬於不同語言的文本
- 12. 程序如何使用以不同語言編寫的文件?
- 13. Symfony Bundle包含不同語言的不同文本
- 14. PHP如何在配置文件中處理不同的語言?
- 15. 使用shell腳本在不同文件夾中的FTP文件
- 16. .NET CORE不加載用於不同語言的資源文件
- 17. MIME消息與多文本/ html在不同的語言環境
- 18. MessageBoxButtons的語言與當前文化的語言不同
- 19. 使用硒webdriver在網頁上驗證文本是不同的語言
- 20. 不同語言的Android應用程序
- 21. 使用Java語言編寫到一個文本文件
- 22. 使用Go編程語言輸出爲純文本文件?
- 23. 發送參數的PHP文件在不同的語言
- 24. 臨時顯示不同語言的文本(不是日期)
- 25. 在Delphi使用文本文件的Android
- 26. Angular translate - 同一種語言的不同異步文件?
- 27. 調用Javascript語言,不同的HTML文件再次功能
- 28. 用不同語言發言
- 29. 檢測文本的語言
- 30. 在文本視圖中更改不同字符的大小Android
很好的答案,謝謝。只是測試它,它像一個魅力 – dumazy 2013-04-11 09:45:04