2010-01-07 18 views
9

Mi cadena tiene comillas dobles en el mismo, en C# que haría:¿Tiene Java el carácter '@' para escapar de las comillas?

string blah = @"this is my ""text"; 

cómo habría de hacerlo en Java?

+0

posible duplicado de [Java equivalente de las cadenas verbatim de C# con @] (http://stackoverflow.com/questions/2673855/java-equivalent-of-cs-verbatim-strings-with) – Mark

+0

Nota (enero de 2018) , pueden venir literales de cadena sin formato para Java (JDK 10 o más): vea [En Java, ¿hay alguna manera de escribir un literal de cadena sin tener que escapar de las comillas?] (https://stackoverflow.com/a/48481601/ 6309). – VonC

Respuesta

12

No. Tal característica no está disponible en Java.
De Sol docs:

Cuando una secuencia de escape que se encuentre en un comunicado de impresión, el compilador lo interpreta en consecuencia. Por ejemplo, si usted quiere poner frases entre comillas debe utilizar la secuencia de escape, \", en las citas de interiores. Para imprimir la frase

She said "Hello!" to me.

que iba a escribir

System.out.println("She said \"Hello!\" to me."); 
3

No hay nada al igual que en la actualidad, pero es una petición "Fix entenderse" para la mejora

  • Bug ID 4472509:. añadir soporte para vertabim (sic) los literales de cadena

Si añadió, esta característica permitiría a dichas cadenas literales:

String qry = @" 
    SELECT 
    a.name, b.number 
    FROM 
    User a, Data b 
    WHERE 
    a.name = "James" 
     AND 
    a.id = b.id 
"; 

Algunos de los comentarios que rechazan esta principalmente en el hecho de que es un azúcar sintáctico, pero es evidente que hay una gran demanda para ello, por lo que es Es posible que veamos esto algún día.

+6

No entiendo la razón para rechazar una función porque es azúcar sintáctica. Permitir que los codificadores no escriban el código de la caldera me parece una mejora de lenguaje ... –

+1

El enlace bugs.sun.com en esta respuesta se rompe actualmente; se vincula a una página de Oracle con el mensaje "Este error no está disponible". ¿Hay una versión actual de esta página disponible en alguna parte? –

Cuestiones relacionadas