采取文本并使其成为一个字符串

时间:2012-08-03 19:56:04

标签: java string text input

我正在研究一个项目,只是想尝试一些练习。我碰到了碰撞。

我正在尝试从文本文件中获取类似这样的名称:["name", "name", "name", "name"]并转换每个没有标点符号的名称,并将它们转换为ArrayList中的字符串。

一旦名字出现在列表中,我将用另一段代码对它们进行排序。有人可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:2)

您可以,分隔符String#splitremove结果数组项中的所有"[]字符。

这将从数组中创建ArrayList

List<String> list = new ArrayList<String>(Arrays.asList(stringArray));

<强>扰流

String names = "[\"Tony Parker\", \"John Smith\", \"Michelle\", \"David\"]";
System.out.println(Arrays.asList(names.replaceAll("[\\[\\]\"]", "").split(", ")));
  • 用空字符串替换所有不需要的字符
  • 将序列“,”上的字符串拆分为数组
  • 将数组转换为列表(实际上:创建数组的列表 view

答案 1 :(得分:1)

你走了。这将向您展示如何获取名称字符串并将每个名称放入arraylist

的基础知识
import java.util.ArrayList;
public class Practice 
{
    public static void main(String[] args)
    {
        // Initialize Variables
        String names = "['Tony Parker', 'John Smith', 'Michelle', 'David']";
        ArrayList<String> namesList = new ArrayList<String>();
        int startingPoint = 0;


        // Replace All Unwanted Characters In String With White Space
        names = names.replace("[", "").replace("]", "").replace("'", "");


        // Trim The String Down And Then Add A Comma At The End
        names.trim();
        names = names + ",";



        // For Each Comma That Is Encountered, Add The Name into The ArrayList
        for (int i = 0; i < names.length(); i++)
        {
            if (names.charAt(i) == ',')
            {
                namesList.add(names.substring(startingPoint, i));
                startingPoint = i +1;
            }
        }



        // Print Out The Array List Of Names
        System.out.println(namesList);
    }
}

答案 2 :(得分:0)

你真的应该读一下如何在这里提出更好的问题,但这里有两个链接可以帮助你入门:

http://www.leepoint.net/notes-java/io/10file/10readfile.html

http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#split(java.lang.String