string有format方法吗? java里可以用ResourceBundle或正则表达式啊。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 104.MessageFormat的用法String strHeader ="0.<title>{0}</title>\n1.{1}\n2.{2}\n"; String str1=MessageFormat.format(strHeader,new Object[]{" - 请输入尊姓大名"," - 请输入尊姓大名"," - 请输入尊姓大名"}); System.out.print(str1); String pattern="On {2},a {0} destroyed {1} houses and caused {3} of damage."; MessageFormat mf=new MessageFormat (pattern); Object [] msgargs={"hurricane",new Integer(99),new GregorianCalendar(1999,0,1).getTime(),new Double(10e7)}; String msg=mf.format(msgargs) ; System.out.print(msg); 搞了这么久java我也没有找到格式化的函数,需要使用的时候只能自己制造了…… /** * 传递一个目录函数并且列出下面的文件夹和文件 */ public static void prtFile(File fl){ …… //文件名、后缀名、目录文件、大小、时间、属性、全名 int[] wdlmt = {8,3,5,0,0,2,4};//预设各项目的显示宽度 wdlmt[4] = sdf.format (new Date(0)).length ();//设定时间显示的宽度 //设定文件大小应该占的宽度 for (int i = 0; i<len; i++)//遍历列表得到大小的最大值 if (fldes[i][3].length () > wdlmt[3]) wdlmt[3] = fldes[i][3].length (); //处理文件名和后缀名为8.3格式 int[] wdblk = {0,1,3,1,2,1,1};//各项目之间的间距 //显示结果 for (int i = 0; i<len; i++) { for (int j = 0; j<fldes[i].length; j++) { String ts = fldes[i][j]; int lents = ts.length (); //如果是文件全名则不限定显示宽度,即全部显示 if (j==6) wdlmt[j] = lents; int width = wdlmt[j]; //将文件大小有对齐显示 if (j!=3) ts = lents < width?(ts+blankNum(width-lents)):ts.substring (0,width); else ts = lents < width?(blankNum(width-lents)+ts):ts.substring (0,width); //显示最后一项后换行 if (j == fldes[i].length-1) ts = ts + "\n"; System.out.print(blankNum(wdblk[j])+ts); } } } /** * 显示一定数量空格的小函数,一般用在格式化排版中 */ private static String blankNum(int num){ if (num <= 0) return ""; String tmp = ""; for (int i = 0; i<num; i++) tmp += " "; return tmp; } 有谁能详细解释下生产消费者问题,包括原理和代码。 继承的问题,请教教我 小问题,望帮忙解决 打包成jar文件后的运行 《Thinking in java》 第八章的问题 问一个简单的问题 哪里有java视频教程下载? 调查一下,因某方面的考虑,你用jdk是1.3还是1.4? 如何获取本机屏幕信息? applet的显示问题 **********<b>谁有JAVA的案例</b>******* 给位高手进来看看!!!!!!
String strHeader ="0.<title>{0}</title>\n1.{1}\n2.{2}\n";
String str1=MessageFormat.format(strHeader,new Object[]{" - 请输入尊姓大名"," - 请输入尊姓大名"," - 请输入尊姓大名"});
System.out.print(str1); String pattern="On {2},a {0} destroyed {1} houses and caused {3} of damage.";
MessageFormat mf=new MessageFormat (pattern);
Object [] msgargs={"hurricane",new Integer(99),new GregorianCalendar(1999,0,1).getTime(),new Double(10e7)};
String msg=mf.format(msgargs) ;
System.out.print(msg);
/**
* 传递一个目录函数并且列出下面的文件夹和文件
*/
public static void prtFile(File fl){
……
//文件名、后缀名、目录文件、大小、时间、属性、全名
int[] wdlmt = {8,3,5,0,0,2,4};//预设各项目的显示宽度
wdlmt[4] = sdf.format (new Date(0)).length ();//设定时间显示的宽度
//设定文件大小应该占的宽度
for (int i = 0; i<len; i++)//遍历列表得到大小的最大值
if (fldes[i][3].length () > wdlmt[3])
wdlmt[3] = fldes[i][3].length ();
//处理文件名和后缀名为8.3格式
int[] wdblk = {0,1,3,1,2,1,1};//各项目之间的间距
//显示结果
for (int i = 0; i<len; i++)
{
for (int j = 0; j<fldes[i].length; j++)
{
String ts = fldes[i][j];
int lents = ts.length ();
//如果是文件全名则不限定显示宽度,即全部显示
if (j==6)
wdlmt[j] = lents;
int width = wdlmt[j];
//将文件大小有对齐显示
if (j!=3)
ts = lents < width?(ts+blankNum(width-lents)):ts.substring (0,width);
else
ts = lents < width?(blankNum(width-lents)+ts):ts.substring (0,width);
//显示最后一项后换行
if (j == fldes[i].length-1)
ts = ts + "\n";
System.out.print(blankNum(wdblk[j])+ts);
}
}
}
/**
* 显示一定数量空格的小函数,一般用在格式化排版中
*/
private static String blankNum(int num){
if (num <= 0)
return "";
String tmp = "";
for (int i = 0; i<num; i++)
tmp += " ";
return tmp;
}