精华内容
下载资源
问答
  • 字符串文本中出现非法转义字符

    千次阅读 2020-05-16 22:59:11
    错误原因:字符串文本中出现非法转义字符 错误分析:Java使用分隔符为反斜杠“\”,比如"d:\a.txt",在实际使用中会被认为成转义字符,使用需要在加一个转义字符,写成如上图所示。但是只能用于windows系统,局限性...

    Illegal escape character in string literal

    在这里插入图片描述

    错误提示:Illegal escape character in string literal

    错误原因:字符串文本中出现非法转义字符

    错误分析:Java使用的分隔符为反斜杠“\”,比如"d:\a.txt",在实际使用中会被认为成转义字符,使用需要在加一个转义字符,写成如上图所示。但是只能用于windows系统,局限性比较大。可以使用“/”作为分隔符或者File.separator.不会只局限于windows.

    总结:分隔符推荐使用“/”或者File.separator

    这里是Yhh–一个初学Java的小菜鸡

    展开全文
  • 今天在做一个文件下载功能时,发现文件名要从数据库中的某个字段去取,而该字段并没有保证不会使用到非法的字符,如 \ / : * ? " < > | 所有我就自己写了一个简单的方法进行替换,代码如下: ///<...

    今天在做一个文件下载功能时,发现文件名要从数据库中的某个字段去取,而该字段并没有保证不会使用到非法的字符,如 \ / : * ? " < > |

    所有我就自己写了一个简单的方法进行替换,代码如下:

     

            /// <summary>
            
    /// 去掉文件名中的无效字符,如 \ / : * ? " < > | 
            
    /// </summary>
            
    /// <param name="fileName">待处理的文件名</param>
            
    /// <returns>处理后的文件名</returns>
            public string ReplaceBadCharOfFileName(string fileName)
            {
                
    string str=fileName;
                str
    =str.Replace("\\",string.Empty);
                str
    =str.Replace("/",string.Empty);
                str
    =str.Replace(":",string.Empty);
                str
    =str.Replace("*",string.Empty);
                str
    =str.Replace("?",string.Empty);
                str
    =str.Replace("\"",string.Empty);
                str=str.Replace("<",string.Empty);
                str
    =str.Replace(">",string.Empty);
                str
    =str.Replace("|",string.Empty);
                str
    =str.Replace(" ",string.Empty);    //前面的替换会产生空格,最后将其一并替换掉
                return str;
            }
    问题是最后必须要做一个处理,就是最后会产生空格,没办法再加上一句一并替换了才没出问题。

    转载于:https://www.cnblogs.com/wubin264/archive/2009/10/30/1592805.html

    展开全文
  • 根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“     2、解决冲突,告诉SVN这个问题已解决(Resolved)。一般更简单些:在你工程OBJ/...
    SVN版本冲突中 Files 的值“ < < < < < < < .mine”无效路径中具有非法字符的解决办法:
     
     
    1、把源代码中所有页面中的非法字符删掉。根据错误提示的页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 的值“ < < < < < < < .mine”无效路径中具有非法字符”,而且又找不到源代码中的路径,那么就尝试下面第2步的解决办法。
     
     
    2、解决冲突,告诉SVN这个问题已解决(Resolved)。一般更简单些:在你的工程OBJ/DEBUG目录下,找到工程名.csproj.FileListAbsolute.txt的文件打开并删除含有'<<<<<<< .mine'或类似的字段,重新编译即可。
     

    3、如果还是没有办法解决,用绝招吧,直接把Debug下的文件给删除了,相信到了这一步还有错误那你就可以去买彩票了。
    展开全文
  • 错误内容分两种:“非法字符:xxxx”(非法字符的内容是多个Unicode编码,但是每次出现都是同一批)和“不是语句”。报错截图是这样: 如果关闭VS Code然后重新打开,那么这些代码就不会报错了。然而如果继续...

    问题描述

    在MacOS系统上安装了VS Code,配置了Java开发环境。每次打开VS Code的时候,随便输入任何代码,都能看到代码的最后有一个红色波浪线,然后PROBLEMS标签页中就会报出大量的错误。错误的内容分两种:“非法字符:xxxx”(非法字符的内容是多个Unicode编码,但是每次出现的都是同一批)和“不是语句”。报错截图是这样的:
    报错的截图
    如果关闭VS Code然后重新打开,那么这些代码就不会报错了。然而如果继续写新的代码,那么新的代码还会报出这些错误来。甚是头疼。

    问题解决

    首先从网上查阅的资料来看,会出现这个问题的原因只有一个——字符编码错误。简而言之,我们肉眼看代码觉得没问题,但是编译器因为字符编码的问题识别成了别的东西。既然问题已经确定,只需要搞明白为什么字符编码会出错,并解决这个问题即可。

    尝试一:编译器字符编码

    首先想到的是会不会是VS Code的字符编码错了。一般来讲它的字符编码应该是默认UTF-8才对。在首选项中寻找encoding的设置,然后设置为utf8即可。
    VS Code设置字符集编码

    尝试二:操作系统字符编码

    我自己在解决这个问题时,第一个尝试失败了,因为它确确实实默认就是utf8。那么我感觉有可能是苹果的系统设置有问题,看起来打出来的字是正常的英文字母,实际上是其他的什么奇怪东西。至于为什么能正确显示出来就不得而知了。
    苹果电脑设置字符集编码的方式如下:在zshrc中写入设置即可(MacOS 10.15版本的terminal默认用的是新的命令行,也就是zsh,所以要在zshrc中设置,否则关掉terminal后就失效了。如果是旧版本的则在bash_profile中设置即可)。

    1. 打开terminal
    2. 输入vim .zshrc,如果是旧版本的MacOS则输入vim .bash_profile
    3. 键入i进入编辑模式
    4. 在配置文件中键入LANG=zh_CN.UTF-8
    5. 键入ESC退出编辑模式
    6. :wq退出vim编译器
    7. 在terminal中输入source .zshrc让配置生效,如果是旧版本的系统则输入source .bash_profile

    尝试三:输入法的问题

    事实上第二次尝试也失败了,因为MacOS的默认字符编码也是UTF-8。所以并没有解决问题。后来我想起来,自己曾经更改过输入法。新系统伊始有简体中文和英文输入法,后来我将英文输入法由ABC改为美国,并增加了德文、日文输入法。有可能是输入法的原因,导致输入的字符编码有些许不同,尤其是日语输入法的嫌疑比较大。
    想到这个我就删除了德文、日文、美国输入法,并改用ABC,发现这个问题果然解决了。后来又反复试了几次,发现即便输入法改回来了,如果在VSCode中输入时输入法为中文简体,也会偶发这个问题。但是如果使用ABC进行输入,那么这个问题就不会复现。

    尝试四:VS Code插件问题(20年9月6日补充)

    在作出了第三次尝试,修改了输入法之后,这个问题有一段时间没出现了,这让我一度以为问题彻底解决了。后来它又零星出现了几次,虽然频率降低了很多,但是还有出现的时候就说明这个问题没有完全解决。
    因为每次都是重启VS Code之后就正常了,然后我注意到启动软件时右下角有个提示,大致内容是正在编译Java代码。我猜测每次报这类错误但重启好用的原因就是每次重启时,VS Code进行了编译操作,即不重启的情况下编译不及时。这有可能是插件造成的。因为VS Code本身不能处理Java代码,而是依靠插件来编译、运行Java程序的。经过检查发现我额外安装了Java Language Support这个插件,而它并不是Java Extention Pack中的一员。既然Java Extention Pack中的插件已经提供了完整的功能,那么这个插件是否多余?有没有可能是这两个插件冲突导致VS Code不能及时编译代码呢?
    亲测删除了Java Language Support这个插件不影响开发,语法高亮、补全提示依然正常,项目也能正常编译、运行。目前为止这个问题不再出现,因此删除功能冗余的代码兴许也是个解决方案。

    总结

    出现这个问题的本质原因是写代码时的字符编码问题。编译器本身、操作系统和输入法都有可能导致这一问题。

    展开全文
  • idea开发 - 项目编译报错:java ...在调整文件字符编码时候,这里点了with bom, 。。。。结果就是印象深刻,让你再也不会忘记。 utf-8 with BOM 小科普 UTF-8 BOM又叫UTF-8 签名。BOM, byte order mark。 U...
  • 绕过加载java文件这一过程,就不会报错,当把.class删除,或者清理工程时候,有出息那个错误(非法字符) 方法1: 1.在 IDE中修改提示有非法字符的java文件编码为:ISO-8859-1 然后 我们就 可以看到java...
  • Discuz!系统_xss_check()函数原本意义...您当前访问请求当中含有非法字符,已经被系统拒绝",本文介绍一种简单修改方法避免此错误。 解决方案如下: \source\class\discuzdiscuz_application.php ...
  • 系统_xss_check()函数原本意义是为了论坛安全,防止XSS攻击,一般网站使用是不会出现什么问题,但是有些网站要接入第三方接口,当第三方接口向本站post数据时候就会报"您当前访问请求当中含有非法字符,...
  • CSND发布文章时提示:标题含有非法字符 问题描述 在CSDN中编辑好文章,发布时提示“标题中含有非法字符”,看下图: 这个是我标题 这个是下方提示 解决方法 当标题中存在英文引号时会出现提示,经过测试,...
  • IDEA 每次创建一个新文件编译都不通过报错: 非法字符 \ufeff ? 硕大网络全是告诉你点击idea右下角这里:切换到gbk 再切换回UTF-8 ? 确实 如此操作这后不会报错了, 编译通过了 但是治标不治本, 下次新建...
  • .mine”无效路径中具有非法字符的解决办法: 1、把源代码中所有页面中的非法字符删掉。根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“ < < < ...
  • 根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“     2、解决冲突,告诉SVN这个问题已解决(Resolved)。一般更简单些:在你工程OBJ/DEBUG...
  • svn、TortoiseSVN冲突中 Files 值“ ”无效路径中具有非法字符的解决办法: 1、把源代码中所有页面中的非法字符删掉。根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:...
  • 公司项目都是用MyEclipse,个人不习惯用,所以每次用IDEA打开一个新项目,编译都会报错:原因是字符编码的问题,右下显示的是UTF-8,实际的字符编码却是UTF-8+BOM,所以需要修改一下该类的字符编码IDEA才能编译成功...
  • 使用ant编译java文件时报非法字符(不可见)问题 解决办法: 下载editplus,打开你java源文件(可以打开多个文件),选择“文档”-...再运行你ant脚本,此时编译就不会报出“非法字符:/65279”这个错误了。 转...
  • SVN版本冲突中 Files 值“ 分类: 电脑开发工具2011-12-07 15:09 74人阅读 评论...根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“ < < < < <
  • 1、把源代码中所有页面中的非法字符删掉。根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“     2、解决冲突,告诉SVN这个问题已解决...
  • .mine”无效路径中具有非法字符的解决办法: 1、把源代码中所有页面中的非法字符删掉。根据错误提示页面来找到非法字符,然后删掉它。一般这样就不会有错误了。如果还有错误提示:“Files 值“ &lt; &...
  • 在TXT中选择另存为,把这个编码改成ANSI,然后将后缀名改为java,再进行编译和运行就不会出现编码出错问题了 同理,在其他编辑器里面报“非法字符:'\ufeff'”这个错误时也是把编码方式改为ANSI就可以了 I ...
  • 我们都知道 反斜杠代表转义,可以在后面加上字母或者符号来实现一些特殊功能:>>> print('C:nowhere') #打印结果如下 C: owhere #我们可以通过反斜杠进行转义,改为: ...原始字符不会把反...
  • atoi和strtol都是c里面的函数,他们都可以将字符串转为int,它们的参数都是const char*,因此在用string时,必须调c_str()方法将其转为char*的字符串。它们都从字符串开始寻找数字或者正负号或者小数点,然后遇到...
  • atoi和strtol都是c里面的函数,他们都可以将字符串转为int,它们的参数都是const char*,因此在用string时,必须调c_str()方法将其转为char*的字符串。 它们都从字符串开始寻找数字或者正负号或者小数点,然后...
  • atoi函数不会对string字符串进行范围检查[-2147483648,2147483647],超过这个界限,不会报错,只会进行相应转换,遇到非法字符会停止,不会报错;头文件为cstdlib string s="111111"; cout<<atoi(s.c_str...
  • 来讲这是编码问题。eclipse导出来文件是utf-8 with BOM编码。...修改文件编码前考虑原文件使用utf-8 with BOM是否有特殊意义,确认修改后不会有影响再进行修改。团队工作一般需要协调,大家使用
  • C语言中从键盘输入字符串时一些问题

    万次阅读 多人点赞 2019-05-17 20:52:10
    scanf()在从键盘读入字符时并不会根据所定义的字符数组的大小来控制读入多少个 , 而是从scanf( ) 中传入的地址开始一直访问下一个元素的内存 , 碰见空格符或者回车符时才停止读入并存入结束符’\0’ , 这就有可能...
  • 在进行开发时,首先要考虑到程序的安全性,不会被其他用户以非法的形式进入或攻击。例如,本实例主要应用Replace()函数替换字符串中的危险字符。该函数的语法格式如下:Replace(expression,find,replacewith[,...
  • 问题: 做代码题时候,每当用到 字符串函数 ,例如 strcat strcpy 便会出现 Memory Check FAILED, 原因是非法写入 ... 使用 strncat strncpy 时 ,函数不会检查 字符串是否有结束符,使用时要确保有结束符。
  • 1、假设公式不会出错,既不用考虑左右括号不配对、出现非法字符等情况。 2、计算过程或结果不用考虑溢出。 3、输入公式中只有整数,没有小数。整数可能有负数,负数需要用括号括起来,如 “(-3)+4" 。在

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 253
精华内容 101
关键字:

不会非法的字符