我正在尝试本地化我的应用程序,以便它同时显示西班牙语和英语。我已经解决了大部分本地化问题,但有一个例外。我有一个 .xml 文件,其中列出了我想移动到 res/raw 文件夹的应用程序问题,以便我可以添加语言环境并让应用程序翻译。
在大多数情况下,这很容易,因为我已经能够使用 (getResources().getString(R.string."") 从 /res 调用大多数字符串但是我在为当前参数进行此调用时遇到了困难。
我的 xml 位于 res/raw/"".xml
我现在正在使用资产管理器来获取问题的 .xml
public static List<Question> readQuestions(AssetManager assetManager){
ArrayList<Question> questionArrayList = new ArrayList<Question>();
try{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(assetManager.open("questions.xml"));
doc.getDocumentElement().normalize();
NodeList nodeLst = doc.getElementsByTagName("question");
for(int s=0; s<nodeLst.getLength(); s++){
有人知道我可以调用原始文件夹以获取.xml吗?
编辑:::
我正在尝试将代码用于输入流,但在上下文中出现错误,提示无法解析符号“上下文”
public static List<Question> readQuestions(AssetManager assetManager){
ArrayList<Question> questionArrayList = new ArrayList<Question>();
try{
InputStream in = context.getResources().openRawResource(R.raw.questions);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(in);
NodeList nodeLst = doc.getElementsByTagName("question");