Estoy aprendiendo D. Parece un gran lenguaje, pero no puedo encontrar ninguna información sobre las funciones de E/S del archivo. Puede que esté siendo tenue (¡soy bueno en eso!), Así que ¿podría alguien señalarme la dirección correcta, por favor? GraciasD archivo de funciones de E/S
Respuesta
¿Qué pasa con el módulo std.stdio
?
Básicamente, usted usa the File
structure de std.stdio
.
import std.stdio;
void writeTest() {
auto f = File("1.txt", "w"); // create a file for writing,
scope(exit) f.close(); // and close the file when we're done.
// (optional)
f.writeln("foo"); // write 2 lines of text to it.
f.writeln("bar");
}
void readTest() {
auto f = File("1.txt"); // open file for reading,
scope(exit) f.close(); // and close the file when we're done.
// (optional)
foreach (str; f.byLine) // read every line in the file,
writeln(":: ", str); // and print it out.
}
void main() {
writeTest();
readTest();
}
Para la materia relacionada específicamente con archivos (atributos de archivo, la lectura/escritura de un archivo de una sola vez), busque en std.file
. Para las cosas que se generaliza a las transmisiones estándar (stdin, stdout, stderr) mira en std.stdio
. Puede usar std.stdio.File
tanto para archivos de disco físicos como para transmisiones estándar. No use std.stream
, ya que está programado para desactivarse y no funciona con rangos (equivalente de D's a los iteradores).
Personalmente, encuentro que la E/S de archivos C-style es favorable. Creo que es una de las E/S más claras de usar, especialmente si trabajas con archivos binarios. Incluso en C++ no uso streams, además de mayor seguridad es simplemente torpe (como prefiero printf sobre streams, ¡excelente como D tiene un printf seguro para tipos!).
- 1. ¿Es D lo suficientemente potente para estas funciones?
- 2. ¿Qué es "-d" en "npm -d install"?
- 3. argumentos variables en funciones de reenvío en D
- 4. Leer archivo de texto en D
- 5. Descargar un archivo en D
- 6. análisis de un archivo con D
- 7. especialización de plantilla D en archivo de origen diferente
- 8. ¿Qué es un monitor de clase en D?
- 9. Funciones de llamada de otra "clase"/archivo
- 10. lee un archivo en una matriz de líneas en d
- 11. ¿Cuál es la diferencia entre los especificadores de conversión% i y% d en las funciones formateadas de IO (* printf/* scanf)
- 12. Importación de módulos en D
- 13. Llamar a funciones de nivel de módulo desde destructor en D (parece arrojar un OutOfMemoryError)
- 14. Lista de funciones del archivo PHP
- 15. orden de funciones en el archivo cpp
- 16. Documentación de Better D
- 17. ¿Hay alguna forma de garantizar que las funciones miembro sean virtuales en D?
- 18. Diferencia entre: d [count] y d [count]
- 19. La creación de funciones curryable con lambdas en D no funciona como class \ struct memebers
- 20. ¿Cuál es la forma D de escribir esto?
- 21. ¿Cuál es el estado actual de las bibliotecas estándar D?
- 22. En java -D ¿qué significa la D?
- 23. D tiempo de ejecución como DLL
- 24. D etc.c.curr ejemplos
- 25. obtener el nombre de archivo y la ruta del archivo `source`d
- 26. funciones sobrecargadas en C++ DLL archivo DEF
- 27. diferencias entre "d = dict()" y "d = {}"
- 28. ¿Qué ocurre cuando un archivo es `fuente`-d en contexto Unix/Linux?
- 29. ¿Cuál es la diferencia entre% d y% * d en el lenguaje c?
- 30. Compilador incompleto de programación D
@Kenny: "Solo estoy aprendiendo" implicaría la versión actualmente "recomendada para nuevos proyectos" para mí, es decir, 2. – Joey