¿Cómo abro un archivo en C#? No me refiero a leerlo por textreader y readline(). Me refiero a abrirlo como un archivo independiente en el bloc de notas.Abra un archivo con el Bloc de notas en C#
Respuesta
Necesita System.Diagnostics.Process.Start()
.
El ejemplo más simple:
Process.Start("notepad.exe", fileName);
enfoque más genérico:
Process.Start(fileName);
El segundo enfoque es probablemente una mejor práctica ya que esto hará que el shell de Windows para abrir el archivo con el que está asociado editor . Además, si el archivo especificado no tiene una asociación, usará el cuadro de diálogo Open With...
de Windows.
Nota para aquellos en los comentarios, gracias por su aporte. Mi rápida y sucia respuesta no fue clara, la actualicé para reflejar la forma correcta.
Me gustaría escapar un poco si fuera tú. –
Acepto que esta es una forma de hacerlo, de otra manera si quisiera abrir el documento pero no ejecutar el programa sería usar algo como: richTextBox1.LoadFile (Program.editInC, RichTextBoxStreamType.UnicodePlainText) para cargar el contenido real en un archivo. – Jim
Es mejor pasar el nombre del archivo como un segundo parámetro. De hecho, según la [documentación] (http://msdn.microsoft.com/en-us/library/53ezey2s.aspx), su código no debería funcionar, ya que el parámetro único de 'Process.Start' es el nombre del documento o la aplicación, mientras que el suyo es el nombre de la aplicación combinado con el parámetro de línea de comando. – Vlad
esto abrirá el archivo con el programa predeterminado de Windows (notepad si no lo ha cambiado);
Process.Start(@"c:\myfile.txt")
Me gustaría escapar un poco si fuera tú. –
tienes razón, arreglado. –
Puede utilizar Process.Start
, llamando notepad.exe
con el archivo como parámetro.
Process.Start(@"notepad.exe", pathToFile);
Las líneas nuevas no son muy útiles en Process.Start ... –
@Albin Sunnanbo - gracias ... buena captura :) – Oded
Por cierto,% pathVariables% no funciona con este método. 'Process.Start (@"% windir% \ notepad.exe ");' arroja una excepción Win32Exception: "No se puede encontrar el archivo", pero normalmente debería funcionar. – Aren
System.Diagnostics.Process.Start("notepad.exe", "text.txt");
Uso System.Diagnostics.Process para poner en marcha una instancia del Bloc de notas.
no va a proporcionar una gran cantidad de información, pero suponiendo que desea abrir cualquier archivo en su computadora con la aplicación que se especifica para el controlador predeterminado para ese tipo de archivo, se puede usar algo como esto:
var fileToOpen = "SomeFilePathHere";
var process = new Process();
process.StartInfo = new ProcessStartInfo()
{
UseShellExecute = true,
FileName = fileToOpen
};
process.Start();
process.WaitForExit();
El parámetro UseShellExecute indica a Windows que use el programa predeterminado para el tipo de archivo que está abriendo.
WaitForExit provocará que su aplicación espere hasta que se cierre la aplicación que colocó.
Excelente y muy útil código para mí cuando intenté abrir un archivo de nota. – Unnikrishnan
Hice clic equivocadamente en "no útil". Pero, de hecho, es muy, muy útil. – Unnikrishnan
- 1. jugando archivo .mp3 en java con el bloc de notas
- 2. Escribir texto en el bloc de notas con C#/Win32
- 3. Extender Bloc de notas ++
- 4. ¿Abrir un archivo de texto usando el bloc de notas como archivo de ayuda en Python?
- 5. Combinar archivos en el Bloc de notas ++
- 6. Ejecutar comandos con bloc de notas ++
- 7. ¿Cómo abrir el archivo del bloc de notas en java?
- 8. .htaccess en el Bloc de notas ++
- 9. Bloc de notas ++ HTML Tidy
- 10. vim y bloc de notas ++
- 11. .pl archivos abiertos en el bloc de notas
- 12. Seleccione el rango de líneas en el Bloc de notas ++
- 13. Cambiar carácter de comentario en el bloc de notas ++
- 14. ¿Desarrollo de ASP.NET MVC con el Bloc de notas?
- 15. Elegir carácter de línea nueva en el Bloc de notas ++
- 16. ¿Cómo enviar texto al Bloc de notas en C#/Win32?
- 17. Cómo copiar el texto marcado en el bloc de notas ++
- 18. ¿Cómo crear un bloc de notas en Eclipse?
- 19. Acceder a la memoria del bloc de notas desde C
- 20. La sangría del Bloc de notas ++ estropea
- 21. ¿Cómo abrir texto en el Bloc de notas desde .NET?
- 22. Anular MAYÚS + CTRL + Z en el Bloc de notas ++
- 23. Bloc de notas ++ nivel de colapso con código Python
- 24. Bloc de notas ++ para Ctrl + clic en el método
- 25. Mostrar etiquetas html no coincidentes en el Bloc de notas ++
- 26. Enviar texto en el portapapeles a la aplicación como el Bloc de notas (C# o Powershell)
- 27. Sangría por espacios usando HTMLTidy en el Bloc de notas ++
- 28. cambie la codificación predeterminada para el bloc de notas ++
- 29. Agregando un lenguaje definido por el usuario en el bloc de notas ++
- 30. Bloc de notas no reconoce el carácter \ n?
¿Desea iniciar una instancia de bloc de notas de su programa y hacer que abra un archivo específico? – Dismissile
sí esto es lo que quiero – Mohamed
Nota: En cuando lo probé con .Net 2.0, 'Process.Start' no se expandió automáticamente"% windir% ", aunque lo omití como en [respuesta de viabhav] (http: // stackoverflow .com/questions/4055266/open-a-file-with-notepad-in-c/4055295 # 4055295) o expandirlo explícitamente ('Environment.GetEnvironmentVariable (" windir ")') funcionó correctamente. – Brian