Crear archivos a través de lista de nombres de archivo y añadir contenido a cada uno

StackOverflow https://stackoverflow.com/questions/900085

  •  23-08-2019
  •  | 
  •  

Pregunta

Tengo que hacer un montón de páginas de redirección como recientemente he actualizado mi sitio web que utilizó anteriormente .html archivos y ahora todos los archivos son .aspx. Tengo un archivo delimitado por tabuladores que contiene una lista de nombres de archivo originales y el correspondiente nombre de archivo nuevo.

Parece que debe haber una lengua por ahí que yo debería ser capaz de crear un archivo usando la primera columna para el nombre del archivo e insertar la segunda columna como su contenido con algún texto adicional para el redireccionamiento 301.

Podría alguien que me señale en la dirección correcta en cuanto a qué idioma (s) sería capaz de lograr esto? Además, si también se podría señalar el nombre del método / función iba a usar, así que sé por dónde empezar cuando se crea el archivo.

he necesitado para hacer este tipo de cosas muchas veces y estoy dispuesto a aprender un nuevo idioma (Perl, Python, o lo que sea) para lograr esto, pero sólo necesito apunta en la dirección correcta. Estoy utilizando Windows XP para desarrollar sucesivamente.

Gracias por su tiempo.

¿Fue útil?

Solución

Esto puede hacerse en unas pocas líneas de C # si ya está trabajando con aspx puede procesar esto en el código subyacente en una página ficticia.

System.IO.StreamReader myreader = new System.IO.StreamReader(Server.MapPath("~/Text.txt"));
        while (!myreader.EndOfStream)
        {
            //9 is Ascii value of Tab  bad idea to split if the second set of values might contain tabs but can reconstruct the data if inputString.length >2
            string[] inputString = myreader.ReadLine().Split(char.ConvertFromUtf32(9).ToCharArray());
            //construct the path to where you want to save the file, or if the filename is the full path all the better
            System.IO.StreamWriter filemaker = new System.IO.StreamWriter(@"C:\" + inputString[0]);
            filemaker.Write(inputString[1]);
            filemaker.Close();
        }
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top