【发布时间】:2016-05-19 13:43:12
【问题描述】:
我的任务是编写一些 Java 来从 DB2 表中读取数据并以可以输入到 Cobol 程序的固定格式写入文件。 Cobol 布局是这样的
01 PERSON
10 FIRST-NAME PIC X(10) (i.e 10 bytes fixed width)
10 LAST-NAME PIC X(20) (i.e 20 bytes fixed width)
10 MIDDLE-INITIAL PIC X(1)
在 Java 中,这些字段以字符串的形式提供给我。使用文档我想出了这样的东西
class Person {
private String firstName;
private String lastName;
private String middleInitial;
Person(String inFirstName, String inLastName, String inMiddleInitial){
this.firstName = inFirstName;
this.lastName = inLastName;
this.middleInitial = inMiddleInitial;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public String getMiddleInitial() {
return middleInitial;
}
}
然后在 main 中,我有这些代码行
st = new ST("$p.firstName$ $p.lastName$ $p.middleInitial$", '$', '$');
st.add("p", new Person("Ethelred", "TheUnready", "X"));
System.out.println(st.render());
执行会产生这个结果
Ethelred TheUnready X
我应该怎么做才能确保输出看起来像这样
Ethelred TheUnready X
虽然像 John Q Smith 这样的名字会喜欢这样
John Smith Q
谢谢!
【问题讨论】:
标签: cobol stringtemplate