2009-05-25 29 views

Respuesta

7

usted tiene dos opciones que yo sepa:

1) Hacer un cadena de reemplazo después de leer su cadena de recursos: s = s.Replace ("\\ t", "\ t") ;

2) Introduzca la secuencia de escape directamente en su cadena de recursos en el momento de la creación escribiendo Alt-012 (creo que esa es la pestaña) en el teclado numérico.

Artículos sobre el mismo here y here.

+0

Opción 1 es lo que hago. – Finglas

+1

Alt-012 no funciona en VS2013, Alt-009 sí. – kibitzerCZ

14

Hay que añadir explícitamente en la pestaña. La forma más sencilla de hacer esto es probablemente que escribir su cadena en el bloc de notas (con la pestaña establecer explícitamente en su sitio en lugar de usando un carácter de escape) y copiar y pegar el texto en el editor de recursos.

Tendrá un problema similar con las líneas nuevas, la manera más fácil de agregarlas es, nuevamente, agregar nuevas líneas explícitamente utilizando la combinación de teclas shift-enter.

+0

+1: Sí, casi la única forma lógica. –

+0

Bloc de notas: ¡el mejor amigo de los programadores! – Treb

+0

intenté copiar pegar no funciona Mayús + pestaña trabajada para nueva línea – Gady

0

¿Has probado el carácter de la pestaña XML?

Disculpa, mi carácter de tabulación no se mostró. Debe haber sido comido por el navegador.

	 
0

\ t agrega una pestaña Ascii pero si está visualizando esto en una página html no verá esa pestaña excepto en el origen de la página. HTML no representa pestañas o líneas nuevas como espacio sin interrupción. Todos se reducen a 1 carácter de espacio cuando se muestran. No se recomienda formatear HTML con espacios en blanco, para eso sirve div con CSS o incluso Table. Si debe agregar espacio en blanco adicional en HTML, use el & nbsp; repetidamente, pero no será una tabulación correcta y creará una pesadilla si alguna vez copia y pega.

De forma alternativa, puede visualizar los datos de cadena en un Área de texto de solo lectura. Esto preservará su formato de cadena. Sin saber los detalles de lo que estás tratando de hacer con tu cadena o cómo la estás creando, estas son las mejores sugerencias que puedo darte.

También puede crear una variable pero \ t funciona en línea.

string TAB = char.ConvertFromUtf32(9).ToString(); 
+0

Supongo que leí mal la pregunta, está tirando de la cadena desde un archivo de recursos externo, entonces sí, tiene que hacer la cadena reemplazar o ingresar la secuencia de escape directamente como declaró Xiaofu. – benjamin

4

Uso del Código de Alt Tab (Alt + 009) se añaden varias líneas usando Shift + Retorno.

1) Abra el archivo de recursos en VS. 2) Coloque el cursor donde desee el carácter de la pestaña 3) Mantenga presionada la tecla Alt 4) Presione 0, 0, 9 en el teclado numérico. 5) Let go alt key.

Al hacer clic en la cadena de recursos, verá que las pestañas se eliminan de la pantalla, puede estar seguro de que todavía están allí. Esto se puede verificar abriendo Resources.Designer.cs y mirando el comentario de la cadena de recursos y resaltando el área donde se insertó la pestaña.

2

Han pasado casi seis años desde la última vez que se modificó este hilo, y la recomendación de usar escapes sigue dominando el día. Por lo que vale, hoy he copiado algo de texto de una constante de cadena C# en el editor de cadenas de recursos, y la pestaña ha sido reemplazada por espacios.Sin embargo, dado que el código esperaba ver el carácter de tabulación real, lanzó una InvalidOperationException (mi código, ¡mi excepción!). Una vez más, volví a la pestaña, siguiendo las excelentes instrucciones del artículo de DevX, "Otra forma de escapar secuencias en archivos de recursos .NET", mencionado en la segunda cita de la respuesta aceptada.

Moral: no cuente con el Portapapeles de Windows para copiar fielmente su texto.

Cuestiones relacionadas