Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字段集readString方法不读取前导空格_Java_String_Spring_Spring Batch - Fatal编程技术网

Java 字段集readString方法不读取前导空格

Java 字段集readString方法不读取前导空格,java,string,spring,spring-batch,Java,String,Spring,Spring Batch,我从文件中读取记录并插入数据库 我正在使用DB2数据库 记录如下: abc pqr abcd 因此,在abc之前,在记录的开头也有几个空格 我正在使用SpringBatch程序和内部字段集映射器读取文件,我正在打印从文件读取的字符串: System.out.println("*" + fieldSet.readString("FULL_RECORD") + "*"); 然而,我得到的结果是: *abc pqr abcd* 这意味着前导空格不会被保留 我的配置文件中的l

我从文件中读取记录并插入数据库

我正在使用DB2数据库

记录如下:

   abc    pqr  abcd
因此,在abc之前,在记录的开头也有几个空格

我正在使用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>

如何在每条记录之前保留前导空格?

查看代码

  • DefaultFieldset的readString方法使用
  • String.trim()
  • 换衣服

    System.out.println("*" + fieldSet.readString("FULL_RECORD") + "*");
    

    从具有给定“name”的列中读取字符串值,包括尾随 空白(不修剪)


    “abc”和“pqr”之间可能有一个\t,而不是一个空格。@IMAnis\u tn:问题只出现在记录开头有前导空格的情况下。abc和pqr之间的空格可以。因此,如果可以将记录作为字符串,请尝试使用trim()删除记录开头和结尾的前导空格。文本中没有真正的问题,但我说对了吗:您想保留尾随空格吗?@Ralph:我想保留前导空格。。。前导空格没有被保留,这在我的问题中的Sys Out输出中是清楚的。谢谢Michael。我也这么做了。但是,我无法回答自己的问题,因此无法更新。。
    System.out.println("*" + fieldSet.readString("FULL_RECORD") + "*");
    
    System.out.println("*" + fieldSet.readRawString("FULL_RECORD") + "*");