如何读取文本文件并复制到具有特定格式的其他位置

时间:2014-03-23 14:44:31

标签: android

我有一个包含许多电话号码的文本文件。我想从文本文件中读取每个数字并将它们粘贴到另一个具有不同文本格式的文本文件中。我该怎么做?请帮帮我

我想读取包含这些数字的文本文件

3434214280
3044559080
3154356865
3312430124
3334491537

并将其粘贴到另一种格式为

的文本文件中
BEGIN:VCARD
VERSION:2.1
N:;UNKNOWN 1;;;
FN:UNKNOWN 1
TEL;CELL;PREF:3434214280
END:VCARD

1 个答案:

答案 0 :(得分:0)

我建议您阅读您的第一个文件,然后阅读具有您的格式的模板文件,并使用您的编号替换此模板中的$ VCARDNO $,然后在替换后保存新格式。 对于读取文件,您可以阅读此How can I read a text file in Android?或在其上进行搜索。 对于写入文件,您可以阅读此How To Read/Write String From A File In Android或在其上进行搜索。

您可以进行以下操作: 1-创建模板文件(或模板字符串)具有以下格式并保存:

BEGIN:VCARD
VERSION:2.1
N:;UNKNOWN 1;;;
FN:UNKNOWN 1
TEL;CELL;PREF:$REALVCARDNO$
END:VCARD

2-读取您的卡号文件并将其加载到列表中。 3-阅读模板文件并保持固定。 4-循环列表并从模板文件中获取您读取的值,然后将$ REALVCARDNO $替换为列表中的当前值,并将新值保存在您需要的输出文件中。

如果您决定稍后根据新要求更改文件格式,则只会在模板中更改,而不会对代码进行任何更改。

代码示例:

    private void processTemplate() {
    final String template = "BEGIN:VCARD" + "\n" + "VERSION:2.1" + "\n" + "N:;UNKNOWN 1;;;" + "\n" + "FN:UNKNOWN 1" + "\n" + "TEL;CELL;PREF:$REALVCARDNO$" + "\n" + "END:VCARD";
    List<String> cardNumberList = new ArrayList<String>();
    //here you should read your file which has the card number and fill cardNumberList with it instead of the following two lines
    cardNumberList.add("3456854778");
    cardNumberList.add("3545456634");
    for (String cardNo : cardNumberList) {
        String myNewStringToSave = template.replace("$REALVCARDNO$", cardNo);
        //here you can save myNewStringToSave to file if you need to save each card number with the above format in single file
    }
}