在JAVA中从URL获取资源xml文件

时间:2018-11-14 00:47:08

标签: java android xml

当前,我将资源文件存储在本地目录中,并通过以下方式调用它们:

Resources res = getResources();
    final String[] docukrz = res.getStringArray(R.array.docukrz);

我想将其在线移动,因此我创建了一个网址:https://example/strings.xml

现在如何获取该文件,以便从URL而不是资源文件夹中调用它。

我是一个完全的初学者,阅读了很多不同的文章和教程,但无法综合考虑。抱歉,如果重复的话。

2 个答案:

答案 0 :(得分:3)

那不是资源的工作方式。资源框架围绕本地存储,一组特定的目录和“限定符”以及运行时确定应从应用程序中获取哪些资源而构建。

欢迎您从互联网上下载xml文件并进行解析,但这绝不会成为您应用程序资源的一部分。

答案 1 :(得分:1)

我建议您使用RetrofitKripton(我是该库的作者)库从URL下载XML文件并将其转换为Java对象。

Kripton的wiki page试图解释如何做:您需要使用XMLParser而不是JSON解析器:

// create retrofit using Kripton converter factory
Retrofit retrofit = new Retrofit.Builder()
  .baseUrl(“https://jsonplaceholder.typicode.com/")
  .addConverterFactory(KriptonBinderConverterFactory.create(BinderType.XML))
  .build();
JsonPlaceHolderService service = Retrofit.create(JsonPlaceHolderService.class);
// consume service
Response<List<Post>> response = service.getAllPost().execute();

有关翻新和Kripton持久性库的更多信息:

如果您想使用Retrofit和Kripton Persistence Library来查看工作示例,可以在GitHub上看到我的示例应用RSS阅读器。