如何在具有不同ID的字符串XML Android中找到重复的字符串?

时间:2018-10-23 06:07:54

标签: java android

我想问一下如何在strings.xml中查找重复的字符串,其中其他字符串具有不同的ID,但内容相同。当我本地化我的应用程序时。它具有超过5000个字符串。

他们的任何Studio插件都可以用来查找具有相同内容的字符串ID。

 <!---Other team member added string--->

<string name="str_checkin_time">Select check-in time</string>
<string name="str_checkin_date">Select check-in date</string>

 <!---Myself added added string--->
<string name="Select_checkin_time">Select check-in time</string>
<string name="Select_checkin_date">Select check-in date</string>

我尝试搜索,但是我主要是通过面试程序找到重复的字符串,而且我找到了Studio插件,但是我必须做同样的事情,即选择字符串然后搜索字符串。我想要自动提示此字符串内容重复的内容。

我发现的插件是https://github.com/konifar/android-strings-search-plugin

如果您知道什么,请帮助我。

3 个答案:

答案 0 :(得分:0)

  1. 尝试XML Duplicate Remover。删除密钥名称,并将其保留为空,然后单击“显示重复项”。 它将为您提供所需的清单。但是列表将所有不同的值混合在一起,如下所示: enter image description here

  2. 编写一个扫描器,该扫描器将加载XML并将值排序到存储桶中。 每次找到现有值时,都将其打印为行号。

答案 1 :(得分:0)

这可能很危险!

想象一下当您删除重复项并因此更改字符串时的情况。更改后的字符串可能无法正确地适合预期在前一个字符串所在的位置的视图(您可能对字符串有期望-冗长,含义等)。我建议提出一个正确的命名键约定以及android字符串搜索插件的用法。这都是关于正确的策略。

答案 2 :(得分:0)

寻找技巧后,我使用在线工具自行完成了这项工作。我已将</string>替换为</string><br>,以便文本在xml解析器中进入不同的行。

对于我使用的xml解析:

https://www.w3schools.com/xml/tryit.asp?filename=tryxml_parsertest2

然后从列表中查找重复的字符串。我在下面的网站上使用过。

http://www.mynikko.com/tools/tool_duplicateremover.html

然后我只有重复的文本,并在android studio中使用折射器替换了所有字符串,并且只保留了一个ID。

感谢您的支持。