我需要将文件上传到网站。我正在使用Talend tSystem组件来做同样的事情。我需要通过PowerShell运行。声明错误与逃避
以下是我正在使用的命令。发生逃避字符错误请告诉我哪里出错了?
"cmd /c start powershell -noninteractive C:\\Curl_windows\\src\\curl.exe -H 'X-API-TOKEN:ZLQuFZWY5zekZd' -F 'surveyId=SV_8dpoD2nJ3' -F 'file=@C:\\Logs\\surveyresponseimport.csv;type=text/csv' 'https:\/\/xxx.com\/API\/v3\/responseimports'"
这似乎是字符串的这一部分中的Java异常:
'https:\/\/xxx.com\/API\/v3\/responseimports'
你没有逃过反斜杠。正斜杠/
不是Java中可逃避的字符,因此在字符串中写\/
会抛出异常。更新后的Java String应如下所示:
"cmd /c start powershell -noninteractive C:\\Curl_windows\\src\\curl.exe -H 'X-API-TOKEN:ZLQuFZWY5zekZd' -F 'surveyId=SV_8dpoD2nJ3' -F 'file=@C:\\Logs\\surveyresponseimport.csv;type=text/csv' 'https:\\/\\/xxx.com\\/API\\/v3\\/responseimports'"
虽然我不确定你为什么写这样的字符串。 Powershell不要求你逃避斜线,Java只需要逃避反斜杠\
。您可以尝试从字符串的该部分中删除所有反斜杠,并检查是否仅此一项就足够了。