我正在讀取文件中的記錄並將其插入到數據庫中。FieldSet readString方法不讀取前導空格
我正在使用DB2數據庫。
的記錄是這樣的:
abc pqr abcd
因此前美國廣播公司有幾個空格,以及在記錄的開始。
我讀使用SpringBatch程序和場內集映射我打印從文件中讀取字符串的文件:
System.out.println("*" + fieldSet.readString("FULL_RECORD") + "*");
但是,我得到的結果是:
*abc pqr abcd*
這意味着領先的空間沒有得到保護。
在我的配置文件中的linetokenizer是:
<beans:property name="lineTokenizer">
<beans:bean class="org.springframework.batch.item.file.transform.FixedLengthTokenizer">
<beans:property name="columns" value="1-241"/>
<beans:property name="names" value="FULL_RECORD"/>
</beans:bean>
</beans:property>
我使用默認的行映射器類,以及將上述標記生成器作爲其財產。
org.springframework.batch.item.file.mapping.DefaultLineMapper
如何保存每條記錄前面有一個空格?
也許在「abc」和「pqr」之間有一個\ t而不是空格。 – 2012-04-27 07:22:22
@IMAnis_tn:問題僅在記錄開始處有前導空格時發生。 abc和pqr之間的空間很好。 – Nik 2012-04-27 07:27:37
所以嘗試使用trim()消除記錄的開始和結尾處的前導空格,當然如果可以將記錄作爲字符串。 – 2012-04-27 07:32:30