我敢肯定,我真的很接近得到這方面的工作。我有一個包含批處理文件輸出的文本文件。我想從文本文件中將計算機名稱分配給JLabel selectedComputerFromAD。目前,文本文件輸出如下所示:分配文本文件中的數據,以Java變量
"CN=COUD111235,OU=Workstations,OU=Mis,OU=Accounts,DC=FL,DC=NET"
我需要抓住什麼CN等於所以我想是lblSelectedComputer = COUD111235 這裏是我到目前爲止所。
ComputerQuery.sendParam();
String sCurrentLine = null, CN = null;
try (BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\anoc5f\\workspace\\ControlPanel\\resultofbatch.txt")))
{
while ((sCurrentLine = br.readLine()) != null)
{
if(sCurrentLine.matches(".*CN=([^,]*).*"))
{
Pattern p1 = Pattern.compile(".*CN=([^,]*),");
Matcher m = p1.matcher(sCurrentLine);
m.find();
CN = m.group(1);
}
}
if(CN != null)
{
//TODO do somethign with CN
System.out.println(CN);
}
else
{
System.out.println("CN not found");
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
});
當前selectedComputerFromAD.setText(sCurrentLine);不起作用。我甚至不完全確定我正在給它分配正確的變量。任何幫助表示讚賞。
什麼目前不工作?根本沒有設置文本,或者是整行設置爲文本? –
目前使用上面的代碼,我得到一個空指針異常。如果我把它放在while循環內,然後它輸出的同時循環經過 – user6680