![]() |
StringTokenizer() with "\" character
String filename="C:\Program Files\Apache Software Foundation\Tomcat
5.5\webapps\upload\multipartform.htm"; StringTokenizer st=new StringTokenizer(filename,"\",false); String v=""; while(st.hasMoreTokens()) { v=st.nextToken(); } out.print(" filename is "+v+" this"); This piece of code is throwing following exception- An error occurred at line: 3 in the jsp file: /Save.jsp Generated servlet error: String literal is not properly closed by a double-quote But if i replace "\" with ".", then it is working fine, What is the problem with "\"? Plz Help! |
Re: StringTokenizer() with "\" character
snehapshinde@gmail.com wrote in news:c3336a2c-6f21-4f5a-bf91-748b3f91aa26
@k36g2000pri.googlegroups.com: > String filename="C:\Program Files\Apache Software Foundation\Tomcat > 5.5\webapps\upload\multipartform.htm"; > > StringTokenizer st=new StringTokenizer(filename,"\",false); > String v=""; > while(st.hasMoreTokens()) > { > v=st.nextToken(); > } > out.print(" filename is "+v+" this"); > > This piece of code is throwing following exception- > An error occurred at line: 3 in the jsp file: /Save.jsp > Generated servlet error: > String literal is not properly closed by a double-quote > > But if i replace "\" with ".", then it is working fine, > What is the problem with "\"? > Plz Help! > \ is a special character in C and related languages, there are constructs like \b (bell) \a (bell) \n new line (LF) \r carriage return (CR) The character following a \ is assumed to have some special meaning, and it will not be processed as it is. Java finds something special for \" and while there will not be anything special that probably is blank. But putting \\ in there will lead to a special value: \ StringTokenizer st=new StringTokenizer(filename,"\\",false); |
Re: StringTokenizer() with "\" character
Lew wrote:
> snehapshinde@gmail.com wrote: >>> String filename="C:\Program Files\Apache Software Foundation\Tomcat >>> 5.5\webapps\upload\multipartform.htm"; > > You need to double the backslashes. > >>> StringTokenizer st=new StringTokenizer(filename,"\",false); >>> String v=""; >>> while(st.hasMoreTokens()) >>> { >>> v=st.nextToken(); >>> } >>> out.print(" filename is "+v+" this"); >>> >>> This piece of code is throwing following exception- >>> An error occurred at line: 3 in the jsp file: /Save.jsp >>> Generated servlet error: >>> String literal is not properly closed by a double-quote >>> >>> But if i replace "\" with ".", then it is working fine, >>> What is the problem with "\"? >>> Plz [sic] Help! > > The problem was programmer error. > > <http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.6> >> It is a compile-time error if the character following a backslash in >> an escape is not an ASCII b, t, n, f, r, ", ', \, 0, 1, 2, 3, 4, 5, 6, >> or 7. > Which includes ". The error was a missing quote, as stated. Inside a quoted string, the quoting character must be escaped. Thus "\"" is a string consisting of one ". |
Re: StringTokenizer() with "\" character
On Sat, 30 Aug 2008 01:24:07 -0700 (PDT), snehapshinde@gmail.com
wrote, quoted or indirectly quoted someone who said : >StringTokenizer st=new StringTokenizer(filename,"\",false); see http://mindprod.com/jgloss/literal.html -- Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com |
| All times are GMT. The time now is 12:24 PM. |
Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.