¿Hay algún truco o utilidad que pueda tomar un archivo XML y convertir el archivo en una cadena larga para usar dentro del código C#? No quiero tener que copiar y pegar manualmente cada línea en el archivo XML. Quiero que cada línea en el archivo sea una línea de cuerda en mi código C# y luego tenga un "+" al final de la línea.Tomar el archivo XML y convertirlo en una cadena larga para la codificación de C#
Respuesta
No es una cuestión de programación, pero aquí es lo que está buscando: http://inedo.com/downloads/smartpaster
+1; suena como una herramienta ordenada. Libre/OSS también :) –
Plugin increíble! gracias –
no puedes enviar la ruta del XML en File.ReadAllText (ruta)?
string xmlContent = System.IO.File.ReadAllText(pathToXML);
El mismo se puede hacer para obtener una matriz de cadenas ...
string[] xmlContent = System.IO.File.ReadAllLines(pathToXML);
Tener un gran archivo incrustado en su código C# como una cadena literal es realmente una mala idea. Es particularmente mala idea tener líneas separadas concatenadas con el operador +
porque las cadenas son inmutables y estarías creando un trillón de objetos que se descartan instantáneamente.
Chris señala que el compilador realizará la concatenación literal en tiempo de compilación.
Se podía leer en la línea de XML como una cadena con una sola línea:
string my_string = File.ReadAllText("xmlfile.xml");
Si usted está tratando de incrustar el archivo de datos en exe de su proyecto, entonces se puede hacer eso con los recursos del proyecto .
+1 para señalar las cadenas son inmutables y la creación de objetos en exceso. – Tim
Si las cadenas son literales, entonces no habría concatenación en el tiempo de ejecución, sucedería en tiempo de compilación. –
"estarías creando un trillón de objetos que se descartarán al instante": no es cierto para los literales de cadena. El compilador se encargará de eso y solo colocará un solo literal de cadena ya concatenado en el código IL. –
utilice el editor de
Se puede pegar el XML en un archivo nuevo en Visual Studio, y el uso de expresiones regulares de búsqueda y reemplazo para arreglar el documento.
- cotizaciones de evacuación y otros personajes que causan problemas
- Anexar
"
al principio y al final de la línea, y+
hasta el final de la línea.
Luego solo tiene que regresar y agregar un nombre de variable al comienzo, un punto y coma al final, y pegarlo en su documento de código fuente.
A partir de ahí, puede formatear el documento de código fuente (para sangrarlo bien) a través de Editar -> Avanzado -> Formatear documento.
Otra opción aquí es hacer uso de literales literales literales, al agregar @
antes de la primera cita. Luego se mantendrán las nuevas líneas, y puede evitar las comillas con ""
en lugar de \"
.
, reflexionar sobre el problema
archivos XML que se almacenan en las cadenas son algo difícil de editar, y parte de la derrota el punto de XML - Ser humano editable. Para tratar con esto, podría considerar agregar el XML a su proyecto
- Puede agregarlo a su proyecto como contenido y establecer las propiedades en el archivo para copiarlo en el directorio de compilación.A continuación, utilice los métodos apropiados
XmlDocument
load-from-file, o simplementeFile.ReadAllText
.
La ventaja (y la desventaja potencial) aquí es que puede editar el archivo después de la compilación. La desventaja es que debe implementar el archivo Xml junto con su ensamblaje.
- Puede agregar el XML a su proyecto como un recurso incrustado. Luego puede usar
Assembly.GetManifestResourceStream
para sacar los datos del archivo.
La desventaja (y la ventaja potencial) es que no puede editar el archivo después de la compilación. La ventaja es que no tiene que implementar el archivo Xml junto con su ensamblaje.
Hacer esto hace que sea mucho más fácil para el desarrollador editar el archivo de lo que sería si el Xml se metiera en un literal de cadena.
string fileContent = File.ReadAllText(pathToFile))
.Replace(Environment.NewLine, "+");
- 1. Determine la codificación de una cadena en C#
- 2. Cómo analizar una cadena XML en lugar de XML en c utilizando la biblioteca libxml2
- 3. serialización XML y codificación
- 4. Cómo caber una cadena larga en una etiqueta JLabel
- 5. Detectar codificación de una cadena en C/C++
- 6. ¿Cómo debo tomar el máximo de 2 columnas en un marco de datos y convertirlo en otra columna?
- 7. ¿Cómo detectar mejor la codificación en un archivo XML?
- 8. ¿Existe una forma estándar de representar un hash SHA1 como una cadena C, y cómo puedo convertirlo a él?
- 9. ¿Puede una cadena de métodos de C# ser "demasiado larga"?
- 10. Definición de una cadena larga en Razor
- 11. Codificación de una cadena numérica en una cadena alfanumérica acortada, y viceversa
- 12. ¿Cuál es la codificación predeterminada para una cadena en VB.NET?
- 13. ¿Hay una abreviatura para crear una constante de cadena en el archivo XML de contexto Spring?
- 14. Python truncar una cadena larga
- 15. Impresora XML bonita de Python para cadena XML
- 16. Java - Codificación de imágenes en XML
- 17. Insertar imagen en el archivo xml usando C#
- 18. Método C# para hacer la codificación URL?
- 19. Manera más rápida en C# para leer el bloque de bytes del archivo y convertirlo a float []
- 20. ¿Cómo tomar un generador de cuerdas y convertirlo a un lector de flujo?
- 21. ¿Cómo declarar una cadena larga en Python?
- 22. C estándar: conjunto de caracteres y codificación cadena especificación
- 23. ¿Cómo escribo una cadena XML en un archivo?
- 24. ¿Cómo leer el archivo XML en C#?
- 25. Codificación en declaración XML python
- 26. Encontrar la secuencia repetitiva más larga en una cadena
- 27. Lea el archivo binario como una cadena en Ruby
- 28. cómo `.Tomar()` en una cadena y obtener una cadena al final?
- 29. Leer cadena XML grande de TSQL PARA instrucción XML en C# .NET
- 30. MailMessage C# - ¿Cómo convertirlo en HTML y agregar imágenes, etc.?
¿Qué estás tratando de resolver? Esto suena muy extraño. –