VS2008升级到VS2010出现“Illegal characters in path.”的解决方案。

"Illegal characters in path."路径中有不合法的字符

 

今天在转换数据库项目的时候碰到这个问题

原始的提示是:

Project: D:/Projects/..../Database.dbp
Filename Status Errors Warnings
 ../../Database.dbp Project not converted :Illegal characters in path. 0 0

 

不用多说,问题多半是Database.dbp项目文件。

第一感觉是不是和文件编码相关,2010应该更国际化。

果然查看一下文件编码,不是utf8而是gb2312,我用记事本另存为,结果还是报同样的错误。

utf8和gb2312唯一有改变的就是中文,这就开始排查是不是中文路径出了问题。

我将所有含中文路径的声明全部删除,总算可以正常加载了,这验证了我的猜测。

 

但如果要把文件名全部修改成英文,那也挺烦的,还得好好想想命名,又不是一两个文件,工作量不小

我没有放弃再次的研究

   Begin Folder = "User"
      Script = "Default.sql"
      Script = "|初始化.sql|8907..............06c"
   End

再次观察包含中文路径的地方,我⊙﹏⊙b汗长得不一样。

多了“|”和后面一串16进制的字符,我不多猜测是干啥了,把他们删掉。

目前为止,5分钟搞定了这个问题。

 

解决的方法:

1、删除“|”和十六进制字符串

如:

   Begin Folder = "User"
      Script = "Default.sql"
      Script = "初始化.sql"
   End

2、将项目文件.dbp保存为utf8格式

 

在其他项目升级也可能会碰到类似问题,这里做一个记录,希望能给碰到类似问题的人以线索。

发布了194 篇原创文章 · 获赞 7 · 访问量 73万+
展开阅读全文

java爬蟲新手問題Illegal character in path at index 38

05-24

写了一个简单的爬虫程序爬京东,之前是可以运行的,现在每次爬到固定的url就开始报错,附错误信息,部分代码段。 Exception in thread "main" java.lang.IllegalArgumentException: Illegal character in path at index 38: http://vip.jd.com/fuli/detail/791.html public String getContent(CrawlerUrl url) throws Exception { String content = null; String urlString = url.getUrlString(); CloseableHttpClient httpclient = HttpClients.createDefault(); // 以下代码是参考httpclient官方给出的下载网页示例代码 try { HttpGet httpget = new HttpGet(urlString); CloseableHttpResponse response = httpclient.execute(httpget); try { int statusCode = response.getStatusLine().getStatusCode(); HttpEntity entity = response.getEntity(); if ((statusCode == HttpStatus.SC_OK) && (entity != null)) { entity = new BufferedHttpEntity(entity); StringBuilder sb = new StringBuilder(); String contentType = entity.getContentType().toString(); int charsetStart = contentType.indexOf("charset="); if (charsetStart != -1) { // 读取字符流 String charset = contentType.substring(charsetStart + 8); BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent(), charset)); int c; while ((c = reader.read()) != -1) sb.append((char) c); reader.close(); } else { // 先解析html文件的前几行获取字符编码,设置好编码格式,再解析html文件的全部内容 BufferedReader FiestReader = new BufferedReader(new InputStreamReader(entity.getContent())); String charset = null; String line = null; int charsetStartInHtml; while ((line = FiestReader.readLine()) != null) { charsetStartInHtml = line.indexOf("charset="); if (charsetStartInHtml != -1) { Matcher charsetMatcher = charsetRegexp.matcher(line); while (charsetMatcher.find()) charset = charsetMatcher.group(1); break; } } FiestReader.close(); BufferedReader SecondReader = new BufferedReader(new InputStreamReader(entity.getContent(), charset)); int c; while ((c = SecondReader.read()) != -1) sb.append((char) c); SecondReader.close(); } content = sb.toString(); } } finally { response.close(); } } finally { httpclient.close(); } visitedUrls.put(url.getUrlString(), url); url.setIsVisited(); // System.out.println(content); return content; } 对代码有什么意见也可以提出来,谢谢大神 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览