java 格式化输出
给你个最详细的, 确实有 package test; import java.text.DecimalFormat; public class 格式化 { /** * @param args */ public static void main(String[] args) { DecimalFormat dig=new DecimalFormat("0000"); String s=dig.format(2); System.out.print(s); } }
JAVA怎么格式化文档
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class Test {
public static void main(String[] args){
System.out.println(parseFile(“c:\\abc.txt”));
}
private static String parseFile(String filePath){
FileReader fReader = null;
try {
fReader = new FileReader(filePath);
} catch (FileNotFoundException e) {
System.out.println(“文件没有找到:”+filePath);
System.exit(-1);
}
BufferedReader bufferedReader = new BufferedReader(fReader);
StringBuffer stringBuffer = new StringBuffer();
String s = null;
try {
while((s=bufferedReader.readLine())!=null){
s=s.replaceAll(“:”, ” “);
stringBuffer.append((s+bufferedReader.readLine()).replaceAll(“#”, “”)+”\r\n”);
stringBuffer.append((s+bufferedReader.readLine()).replaceAll(“#”, “”)+”\r\n”);
}
} catch (IOException e) {
System.out.println(“文件内容读取错误”);
System.exit(-1);
}
return stringBuffer.toString();
}
}
测试文件为c:\abc.txt,其内容为:
YUNFENG:603E:SNL 0185762:SIGAPORE#
20:GP:4:HUB#
40:RF:5:SNL#
YUNFENG:603E:JL 4547357:PUSAN#
20:GP:4:HUB#
40:RT:5:JL#
HANYANG:603E:HUB 8576276:SIGAPORE#
20:RH:4:HUB#
40:RF:5:SNL#
输出结果为:
YUNFENG 603E SNL 0185762 SIGAPORE20:GP:4:HUB
YUNFENG 603E SNL 0185762 SIGAPORE40:RF:5:SNL
YUNFENG 603E JL 4547357 PUSAN20:GP:4:HUB
YUNFENG 603E JL 4547357 PUSAN40:RT:5:JL
HANYANG 603E HUB 8576276 SIGAPORE20:RH:4:HUB
HANYANG 603E HUB 8576276 SIGAPORE40:RF:5:SNL
不知道是否满足你的要求,但是文件必须严格按照你给的格式,即每3行为一段,如果有别的需求你可以自己在行调整代码,以上仅供参考
Java 使用Formatter类格式化输出日期时间
public class DateFormatDemo {public static void main(String[] args) throws ParseException {// 创建日期对象Date d = new Date();// 给定模式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// public final String
JAVA编程:输出值要求格式化为:以逗号作为每千位的间隔符,并且小数点后四舍五入为两位。例如:123.45
import java.text.DecimalFormat;
public class Test{
public static void main(String[] args){
double pi=3.1415927;//圆周率
//取一位整数
System.out.println(new DecimalFormat(“0”).format(pi));//3
//取一位整数和两位小数
System.out.println(new DecimalFormat(“0.00”).format(pi));//3.14
//取两位整数和三位小数,整数不足部分以0填补。
System.out.println(new DecimalFormat(“00.000”).format(pi));//03.142
//取所有整数部分
System.out.println(new DecimalFormat(“#”).format(pi));//3
//以百分比方式计数,并取两位小数
System.out.println(new DecimalFormat(“#.##%”).format(pi));//314.16%
long c=299792458;//光速
//显示为科学计数法,并取五位小数
System.out.println(new DecimalFormat(“#.#####E0”).format(c));//2.99792E8
//显示为两位整数的科学计数法,并取四位小数
System.out.println(new DecimalFormat(“00.####E0”).format(c));//29.9792E7
//每三位以逗号进行分隔。
System.out.println(new DecimalFormat(“,###”).format(c));//299,792,458
//将格式嵌入文本
System.out.println(new DecimalFormat(“光速大小为每秒,###米”).format(c)); //光速大小为每秒299,792,458米
}
}
Java 使用SimpleDateFormat类格式化输出日期时间
import java.util.Date;
import java.util.Locale;
import java.text.DateFormat;
import java.text.FieldPosition;
/**
* DateFormat 的API测试程序
*/
public class DateFormatTest {
public static void main(String[] args) {
// 只显示“时间”:调用getTimeInstance()函数
testGetTimeInstance() ;
// 只显示“日期”:调用getDateInstance()函数
testGetDateInstance() ;
// 显示“日期”+“时间”:调用getDateTimeInstance()函数
testGetDateTimeInstance() ;
// 测试format()函数
testFormat();
}
/**
* 测试DateFormat的getTimeInstance()函数
* 它共有3种重载形式:
* (01) getTimeInstance()
* (02) getTimeInstance(int style)
* (03) getTimeInstance(int style, Locale locale)
*
* @author skywang
*/
private static void testGetTimeInstance() {
Date date = new Date();
//Locale locale = new Locale(“fr”, “FR”);
Locale locale = new Locale(“zh”, “CN”);
// 等价于 DateFormat.getTimeInstance( DateFormat.MEDIUM);
DateFormat short0 = DateFormat.getTimeInstance( );
// 参数是:“时间的显示样式”
DateFormat short1 = DateFormat.getTimeInstance( DateFormat.SHORT);
DateFormat medium1 = DateFormat.getTimeInstance( DateFormat.MEDIUM);
DateFormat long1 = DateFormat.getTimeInstance( DateFormat.LONG);
DateFormat full1 = DateFormat.getTimeInstance( DateFormat.FULL);
// 参数是:“时间的显示样式” 和 “地区”
DateFormat short2 = DateFormat.getTimeInstance( DateFormat.SHORT, locale);
DateFormat medium2 = DateFormat.getTimeInstance( DateFormat.MEDIUM, locale);
DateFormat long2 = DateFormat.getTimeInstance( DateFormat.LONG, locale);
DateFormat full2 = DateFormat.getTimeInstance( DateFormat.FULL, locale);
System.out.println(“\n—-getTimeInstance —-\n”
+ “(1.0) Empty Param : ” + short0.format(date) +”\n”
+ “(2.1) One Param(s) : ” + short1.format(date) +”\n”
+ “(2.2) One Param(m) : ” + medium1.format(date) +”\n”
+ “(2.3) One Param(l) : ” + long1.format(date) +”\n”
+ “(2.4) One Param(f) : ” + full1.format(date) +”\n”
+ “(3.1) One Param(s,l): ” + short2.format(date) +”\n”
+ “(3.2) One Param(m,l): ” + medium2.format(date) +”\n”
+ “(3.3) One Param(l,l): ” + long2.format(date) +”\n”
+ “(3.4) One Param(f,l): ” + full2.format(date) +”\n”
);
}
/**
* 测试DateFormat的getDateTimeInstance()函数
* 它共有3种重载形式:
* (01) getDateInstance()
* (02) getDateInstance(int style)
* (03) getDateInstance(int style, Locale locale)
*/
public static void testGetDateTimeInstance() {
Date date = new Date();
Locale locale = new Locale(“zh”, “CN”);
// 等价于 DateFormat.getDateTimeInstance( DateFormat.MEDIUM);
DateFormat short0 = DateFormat.getDateTimeInstance( );
DateFormat short1 = DateFormat.getDateTimeInstance( DateFormat.SHORT, DateFormat.SHORT);
DateFormat medium1 = DateFormat.getDateTimeInstance( DateFormat.MEDIUM, DateFormat.MEDIUM);
DateFormat long1 = DateFormat.getDateTimeInstance( DateFormat.LONG, DateFormat.LONG);
DateFormat full1 = DateFormat.getDateTimeInstance( DateFormat.FULL, DateFormat.FULL);
DateFormat short2 = DateFormat.getDateTimeInstance( DateFormat.SHORT, DateFormat.SHORT, locale);
DateFormat medium2 = DateFormat.getDateTimeInstance( DateFormat.MEDIUM, DateFormat.MEDIUM, locale);
DateFormat long2 = DateFormat.getDateTimeInstance( DateFormat.LONG, DateFormat.LONG, locale);
DateFormat full2 = DateFormat.getDateTimeInstance( DateFormat.FULL, DateFormat.FULL, locale);
System.out.println(“\n—-getDateTimeInstance —-\n”
+ “(1.0) Empty Param : ” + short0.format(date) +”\n”
+ “(2.1) One Param(s) : ” + short1.format(date) +”\n”
+ “(2.2) One Param(m) : ” + medium1.format(date) +”\n”
+ “(2.3) One Param(l) : ” + long1.format(date) +”\n”
+ “(2.4) One Param(f) : ” + full1.format(date) +”\n”
+ “(3.1) One Param(s,l): ” + short2.format(date) +”\n”
+ “(3.2) One Param(m,l): ” + medium2.format(date) +”\n”
+ “(3.3) One Param(l,l): ” + long2.format(date) +”\n”
+ “(3.4) One Param(f,l): ” + full2.format(date) +”\n”
);
}
/**
* 测试DateFormat的getDateInstance()函数
* 它共有3种重载形式:
* (01) getDateTimeInstance()
* (02) getDateTimeInstance(int dateStyle, int timeStyle)
* (03) getDateTimeInstance(int dateStyle, int timeStyle, Locale locale)
*/
public static void testGetDateInstance() {
Date date = new Date();
//Locale locale = new Locale(“en”, “US”);
Locale locale = new Locale(“zh”, “CN”);
// 等价于 DateFormat.getDateInstance( DateFormat.MEDIUM);
DateFormat short0 = DateFormat.getDateInstance( );
DateFormat short1 = DateFormat.getDateInstance( DateFormat.SHORT);
DateFormat medium1 = DateFormat.getDateInstance( DateFormat.MEDIUM);
DateFormat long1 = DateFormat.getDateInstance( DateFormat.LONG);
DateFormat full1 = DateFormat.getDateInstance( DateFormat.FULL);
DateFormat short2 = DateFormat.getDateInstance( DateFormat.SHORT, locale);
DateFormat medium2 = DateFormat.getDateInstance( DateFormat.MEDIUM, locale);
DateFormat long2 = DateFormat.getDateInstance( DateFormat.LONG, locale);
DateFormat full2 = DateFormat.getDateInstance( DateFormat.FULL, locale);
System.out.println(“\n—-getDateInstance —-\n”
+ “(1.0) Empty Param : ” + short0.format(date) +”\n”
+ “(2.1) One Param(s) : ” + short1.format(date) +”\n”
+ “(2.2) One Param(m) : ” + medium1.format(date) +”\n”
+ “(2.3) One Param(l) : ” + long1.format(date) +”\n”
+ “(2.4) One Param(f) : ” + full1.format(date) +”\n”
+ “(3.1) One Param(s,l): ” + short2.format(date) +”\n”
+ “(3.2) One Param(m,l): ” + medium2.format(date) +”\n”
+ “(3.3) One Param(l,l): ” + long2.format(date) +”\n”
+ “(3.4) One Param(f,l): ” + full2.format(date) +”\n”
);
}
/**
* 测试DateFormat的format()函数
*/
public static void testFormat() {
Date date = new Date();
StringBuffer sb = new StringBuffer();
FieldPosition field = new FieldPosition(DateFormat.YEAR_FIELD);
DateFormat format = DateFormat.getDateTimeInstance();
sb = format.format(date, sb, field);
System.out.println(“\ntestFormat”);
System.out.printf(“sb=%s\n”, sb);
}
}
java formatter是什么,有什么作用,怎么用?
java.util.Formatter 是JDK1.5新增的类库,功能很强大,主要用来格式化文本的。
格式化主要用在文本输出方面,比如,数字、日期、金额等,还有类似超市的购物单小票等等,都会用到格式化输出的工具。在此类没出现之前,只能通过空格缩进或这个制表符来对单据等格式做一些控制,现在只要掌握java.util.Formatter,就可以熟练应用了 。
举例如下:
import java.util.Calendar;
import java.util.Formatter;
import java.util.GregorianCalendar;
/**
* Formatter测试
*
* @author leizhimin 2009-7-16 16:31:02
*/
public class TestFormatter {
public static void main(String[] args) {
//%[argument_index$][flags][width][.precision]conversion
Formatter f1 = new Formatter(System.out);
//格式化输出字符串和数字
f1.format(“格式化输出:%s %d”, “a”, 1235);
System.out.println(“\n——–“);
//日期的格式化
Calendar c = new GregorianCalendar();
f1.format(“当前日期:%1$tY-%1$tm-%1$te”, c);
System.out.println(“\n——–“);
//日期的格式化,并将格式化结果存储到一个字符串变量中
String s = String.format(“当前日期:%1$tY-%1$tm-%1$te”, c);
System.out.println(s);
//2$:取第二个参数
//-: 指定为左对齐,默认右对齐
//5:最大输出宽度为20,不够会补空格,实际若超过则全部输出
//.2:在此表示输出参数2的最大字符数量,如果是浮点数字,则表示小数部分显示的位数
//s :表示输入参数是字符串
f1.format(“%2$-5.2s %1$2s”, “123”, “456”);
//将格式化的结果存储到字符串
System.out.println(“\n——–“);
String fs = String.format(“身高体重(%.2f , %d)”, 173.2, 65);
System.out.println(fs);
//printf()本质上也是用System.out作为输出目标构造Formatter对象
//调用format方法,并将printf的参数传给format方法而得。
System.out.println(“\n——–“);
System.out.printf(“身高体重(%.2f , %d)”, 180.2, 65);
}
}
运行结果:
格式化输出:a 1235
——–
当前日期:2009-07-16
——–
当前日期:2009-07-16
45 123
——–
身高体重(173.20 , 65)
——–
身高体重(180.20 , 65)
Process finished with exit code 0
java的格式输出问题
import java.text.*; float num = 10.1724f; DecimalFormat df = new DecimalFormat("0.##"); String a = df.format(num);
Java中数字格式化的方法
package test; import java.text.DecimalFormat; public class Test { public static void main(String[] args) { int aa = 555; DecimalFormat decimalFormat = new DecimalFormat("00000000"); String ss = decimalFormat.format(aa); System.out.println(ss); } }
java中如何像c一样格式化读写文件? 比如存 小明 13,有没有 %s %d ,这样读的?
看一下Farmat类的用法吧,一般情况下的格式化应该都被封装在这个类里面了
java数字格式输出及输入框用法
JPasswordField 是一个轻量级组件,允许编辑单行文本,其视图指示键入内容,但不显示原始字符.有关更多信息和示例,请参阅 The Java Tutorial 中的 How to Use Text Fields 一节. JPasswordField 与使用 echoChar 设置的 java.awt.TextField 是根本一致的.单独提供它可以较方便地安全更改 JTextField 的 UI 而不影响密码输入. 注: 默认情况下,JPasswordField 禁用输入法;否则,当使用输入法组合时,输入字符应该是可见的.如果应用程序需要输入法支持,请使用继承方法 enableInputMethods(true).