我的问题:我需要从文本文件中获取多个值。
我正在研究从ttcn-3语言到XML语言的解析器,我需要做的是从ttcn模块中获取一些关键词和值,这些关键词和值写在文本文件中以构建XML文件。
以下是我的ttcn代码的开头:
module SessionSetup
{
type port InputPortType message { in charstring }
type port OutputPortType message { out charstring }
type component SessionSetupResComponentType {
port InputPortType InputPort;
port OutputPortType OutputPort;
}
例如,我需要获取模块后面的字符串(SessionSetup),这是我做的代码:
public void ReadTheFileGetTheModuleName(String fichier){
try{
InputStream ips=new FileInputStream(fichier);
InputStreamReader ipsr=new InputStreamReader(ips);
BufferedReader br=new BufferedReader(ipsr);
String ligne;
while ((ligne=br.readLine())!=null){
if (ligne.contains("module"))
{
String[] st = ligne.split(ligne, ' ');
System.out.println("Nom = "+st[1]);
}
chaine+=ligne+"\n";
}
br.close();
}
catch (Exception e){
System.out.println(e.toString());
}
}
问题是它不起作用,我不会在模块之后得到字符串。
由于
答案 0 :(得分:1)
String[] st = ligne.split(ligne, ' ');
/\/\/\/\/\/\/\
Incorrect way, pass some regex on which string should split
您的String#Split()
方法有误,请查看documentation
应该是这样的
public String[] split(String regex, int limit)
or
public String[] split(String regex)