2016-03-09 39 views
-1

我想通过基本的客户端,服务器应用程序在新的一行输出数组。但是,为了实现这一点,我不得不使用子串来查找每个单词后面的#以表示行结束。不过,我想删除此功能,并将每一部分放在一个新行中。输出新行无WITH循环

public ClientHandler(Socket socket,Users newUser, int newClientUser) 
                throws IOException 
{ 
    client = socket; 
    input = new Scanner(client.getInputStream()); 
    output = new PrintWriter(
        client.getOutputStream(),true); 
    user = newUser; 
    clientUser = newClientUser; 

    String[] itemName = {user.getItemName(1), user.getItemName(2)}; 
    String[] description = {user.getItemDescription(1), user.getItemDescription(2)}; 
    String[] itemtime = {user.getItemTime(1), user.getItemTime(2)}; 

    output.println(itemName[0] + "@" + itemName[1] 
     + "@" + "Welcome To The Auction User:" + clientUser 
     + itemName[0] +": "+ description[0] + 
     "@"+ itemName[1] +": "+description[1]+ 
     "@"+ "Deadline For " + itemName[0] + ": " 
     + itemtime[0] + "#" +"Deadline For " + 
     itemName[1] + ": " + itemtime[1]+"@"); 

} 

private synchronized void getMessage(String response) 
{ 
    String message=""; 
    for(int i= count; !response.substring(i, i+1).equals("@"); i++) 
    { 
     count = i; 
    } 
} 

回答

0
output.println(itemName[0] + "\n" + itemName[1] 
     + "\n" + "Welcome To The Auction User:" + clientUser 
     + itemName[0] +": "+ description[0] + 
     "\n"+ itemName[1] +": "+description[1]+ 
     "\n"+ "Deadline For " + itemName[0] + ": " 
     + itemtime[0] + "\n" +"Deadline For " + 
     itemName[1] + ": " + itemtime[1]+"\n"); 

而是有一个 “#” 表示一个新行的,你可以使用 “\ n”。 Java会从您的字符串中读取它作为新行。

+0

这有点难以理解你的问题,所以我尽我所能地尽力回答。 – DarkJade