【发布时间】:2018-10-08 10:47:18
【问题描述】:
当我尝试对我的字符串执行一些操作时,我的 tMap 出现问题。我有一个具有 Ad_Set_Name 的 csv,在某些行中单元格中有更多行。我使用以下内容:
row4.Ad_Set_Name.contains(" ") ? row4.Ad_Set_Name.substring(0,row4.Ad_Set_Name.indexOf(" ")) : row4.Ad_Set_Name
row4.Ad_Set_Name.contains("\"") ? row4.Ad_Set_Name.substring(row4.Ad_Set_Name.indexOf("\"")+1,row4.Ad_Set_Name.lastIndexOf("\"")) : "null"
我假设 Ad_Set_Name “Other vc_7days”。所以在这种情况下,第一行会给我“Other”,第二行会给我“null”。 Ad_Set_Name = "Other vc_7days "something" 3rd" 第一行将返回 "Other",第二行将返回 "something"。但是当我有 Ad_Set_Name=
“其他”
东西” 我有一个索引错误,例如:“StringIndexOutOfBoundsException:字符串索引超出范围:-1” 知道为什么吗? 非常感谢!
错误日志是:
Exception in component tMap_1 (facebook_campaigns_amazon_us)
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(Unknown Source)
at mava2.facebook_campaigns_amazon_us_0_1.facebook_campaigns_amazon_us.tFileInputDelimited_2Process(facebook_campaigns_amazon_us.java:4649)
at mava2.facebook_campaigns_amazon_us_0_1.facebook_campaigns_amazon_us.tWaitForFile_1Process(facebook_campaigns_amazon_us.java:2322)
at mava2.facebook_campaigns_amazon_us_0_1.facebook_campaigns_amazon_us.tMysqlConnection_1Process(facebook_campaigns_amazon_us.java:856)
at mava2.facebook_campaigns_amazon_us_0_1.facebook_campaigns_amazon_us.runJobInTOS(facebook_campaigns_amazon_us.java:5905)
at mava2.facebook_campaigns_amazon_us_0_1.facebook_campaigns_amazon_us.main(facebook_campaigns_amazon_us.java:5575)
【问题讨论】:
-
您可以尝试打印出问题中包含的代码之前的行 (
System.out.println(row4);) 吗?这可能会告诉你问题出在哪里。如果您无法弄清楚,请包含控制台输出,我很乐意为您提供帮助。 -
一回到我的电脑,我就会拍一些屏幕截图。并将它们放在 weTransfer 上,因为我还不能发布图片。我也无法打印该行,因为当我将 csv 输出与数据库链接时,所有这些都发生在 tMap 中。非常感谢!我会尽快发布照片。
-
我添加了错误日志。
-
我不知道该放在哪里。因为我在链接时执行了我在 tMap 中提到的代码。有没有办法先打印出来?我不知道。我是新来的。
-
所以我的错误来自 tmap。我只知道从 tJava 元素打印