草庐IT

currency-formatting

全部标签

java - 线程 "main"java.util.MissingFormatArgumentException : Format specifier '10s' 中的异常

毫无疑问,我在这里遗漏了一些非常明显的东西,但我无法弄清楚。任何帮助,将不胜感激。错误来自这里:packageB00166353_Grades;publicclassStudent{Stringname,banner;publicStudent(Stringname,Stringbanner){this.name=name;this.banner=banner;}publicStringtoString(){StringproductDetails=newString();productDetails+=String.format("%-20s%10.2s%10s",this.name

java - 我们可以使用 String.format() 来填充/前缀所需长度的字符吗?

java.lang.String.format(Stringstr,Stringstr1)能否用于添加特定字符的前缀。我可以对这样的数字执行此操作:intsendID=202022;StringusiSuffix=String.format("%032d",sendID);它生成一个长度为32的String并在左边填充0:000000000000000000000000000202022当sendID是String时如何实现同样的事情:StringsendID="AABB";我想要这样的输出:0000000000000000000000000000AABB

java - String 类型中的方法 format(String, Object[]) 不适用于参数 (...)

这是我的代码:inthoursFormat=1,minsFormat=2,secsFormat=3;StringtimeFormat=String.format("%02d:%02d:%02d",hoursFormat,minsFormat,secsFormat);这给出了一个编译错误:Unresolvedcompilationproblem:Themethodformat(String,Object[])inthetypeStringisnotapplicableforthearguments(String,int,int,int)为什么会出现此错误,我该如何解决?

java - 如何使用 String.format 将字符串居中?

publicclassDivers{publicstaticvoidmain(Stringargs[]){Stringformat="|%1$-10s|%2$-10s|%3$-20s|\n";System.out.format(format,"FirstName","Init.","LastName");System.out.format(format,"Real","","Gagnon");System.out.format(format,"John","D","Doe");Stringex[]={"John","F.","Kennedy"};System.out.format(St

java - "%1$#"在 String.format (Java) 中使用时是什么意思?

语言是Java。%1$#在...中是什么意思staticStringpadright(Stringstr,intnum){returnString.format("%1$#"+num+"str",str);}在JavaAPI中,String.format()是这样使用的:publicstaticStringformat(Stringformat,Object...args)所以我认为%1$#是一个格式说明符。%[flags][width][.precision][argsize]typechar是模板。1是旗帜?$是宽度?#是精度吗?num是argsize?“str”是typechar

java - 甲骨文/JDBC : retrieving TIMESTAMP WITH TIME ZONE value in ISO 8601 format

关于该主题的某些部分已经说了很多(并写了SO),但不是全面、完整的方式,所以我们可以有一个“终极、全面”的解决方案供每个人使用。我有一个Oracle数据库,我在其中存储全局事件的日期+时间+时区,因此必须保留原始TZ,并根据要求交付给客户端。理想情况下,它可以通过使用标准ISO8601“T”格式很好地工作,这种格式可以使用“TIMESTAMPWITHTIMEZONE”列类型(“TSTZ”)很好地存储在Oracle中。类似'2013-01-02T03:04:05.060708+09:00'我需要做的就是从数据库中检索上述值并将其发送给客户端,无需任何操作。问题是Java缺乏对ISO860

java - 我可以在 String.format 中预编译格式字符串吗? (或者做任何其他事情来更快地格式化日志?)

众所周知thatString.format()performanceisterrible.我在我的(可能很常见的)典型案例中看到了很大的可能改进。我多次打印相同的数据结构。让我们想象一下像“x:%dy:%dz:%d”这样的结构。我预计String.format()的主要问题是它必须始终解析格式化字符串。我的问题是:是否有一些现成的类允许只读取一次格式化字符串,然后允许在填充可变参数时快速给出字符串?用法应如下所示:PreStringps=newPreString("x:%dy:%dz:%d");Strings;for(inti=0;i我知道这是可能的-以下是我的快速和肮脏的例子,它做我

java - 如何在 Java 中使用 String.format() 复制选项卡 "\t"?

我正在逐行打印数据,并希望它像表格一样组织起来。我最初使用的是firstName+","+lastName+"\t"+phoneNumber。但对于一些较大的名字,电话号码会被推错位我正在尝试使用String.format()来实现此效果。谁能告诉我要使用的格式语法?我尝试了String.format("%s,%s,%20s",firstName,lastName,phoneNumber),但这不是我想要的。我希望它看起来像这样:约翰·史密斯123456789鲍勃,麦迪逊123456789查尔斯·理查兹123456789编辑:这些答案似乎适用于System.out.println()。

java - 实现比特币和 java.util.Currency

我正在尝试将比特币添加为一种货币以显示在我的网站上。我有汇率和所有信息,但每当我使用java.util.Currency.getInstance("BTC")时,我总是收到IllegalArgumentException。这是有道理的,因为它不包含在ISO4217的列表中。货币代码,而且在Java7中也没有。我看到了几个选项,但没有一个能真正解决我的问题。根据Javaplatformdocs,您可以通过创建文件$JAVA_HOME/lib/currency.properties来覆盖特定区域设置的货币。这是一个问题,因为比特币不绑定(bind)到特定的区域设置,也不应该用来代替任何国家

Java 将 long 转换为 currency

我无法将长整数(美分)转换为货币格式。我的代码:longdoublePayment=1099;//Shouldequal$10.99DecimalFormatdFormat=newDecimalFormat();StringformattedString=dFormat.format(doublePayment);System.out.println(formattedString);输出:1,099我也试过:longdoublePayment=1099;NumberFormatn=NumberFormat.getCurrencyInstance(Locale.US);Strings=