开发者

Formatting strings in java

I am reading the serial buffer with readLine() method. The string returned by readLine() is in the format "str1 : str2". In a while loop when I use readLine() number of times for a response of serial port comman开发者_开发百科d I get weird output like this :

String1 : string1
SString11 : String2
StringString2 : String23 
String4 : String5

But I need the output formatted as below

String1       : string1
SString11     : String2
StringString2 : String23 
String4       : String5

I used the split method on string and get the two strings separated with delimiter as ':'. But now I need to append the String1 with spaces to align all the colons.

I am sorry If my problem explanation is weird. But If anybody understood the problem can you please suggest how to do it?


The easiest way to achieve this is to use System.out.format(). This lets you use C printf style format specifiers. An example:

System.out.format("%-5s:%10s\n", "Name", "Nemo");
System.out.format("%-5s:%10d\n", "Age", 120);

This will output:

Name :      Nemo
Age  :       120

Also see documentation for the Formatter class to learn more about the format string syntax.


Take a look at System.out.printf


System.out.format("%30s : %s", str1, str2);

Will print the first string with a fixed width of 30 characters.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜