D语言 - 文件I/O

D语言 - 文件I/O 首页 / D语言入门教程 / D语言 - 文件I/O

文件File由std.stdio模块的 File 结构表示,文件表示字节序列,无论是文本文件还是二进制文件都没有关系,D编程语言提供对高级函数的访问/处理存储设备上文件。

打开文件

首先通过指定文件名和所需的访问权限来打开文件。

File file=File(filepath, "mode");

在这里, filename 是字符串文字,您可以使用它来命名文件并访问 mode 可以具有以下值之一-

Sr.No.Mode & 描述
1

r

读取内容。

2

w

写入内容,如果不存在则创建一个新文件。

3

a

追加写入,如果不存在则创建一个新文件。

4

r +

打开一个文本文件以进行读写。

无涯教程网

5

w +

打开一个文本文件以进行读写,如果存在,它将首先将文件截断为零长度;

6

a +

打开一个文本文件以进行读写,如果文件不存在,它将创建文件。

关闭文件

要关闭文件,请使用file.close()函数,其中file包含文件引用。

file.close();

程序使用完该文件后,必须关闭该程序打开的所有文件,在大多数情况下,不需要显式关闭文件,当文件对象终止时,它们将自动关闭。

写入文件

file.writeln用于写入打开的文件。

file.writeln("learnfk"); 
import std.stdio; 
import std.file;
  
void main() { 
   File file=File("test.txt", "w"); 
   file.writeln("learnfk");
   file.close(); 
}

编译并执行上述代码后,它将在其下启动的目录创建一个新文件 test.txt 。

读取文件

以下方法从文件读取一行-

string s=file.readln();

读写的完整如下所示。

import std.stdio; 
import std.file; 
 
void main() { 
   File file=File("test.txt", "w");
   file.writeln("learnfk");  
   file.close(); 
   file=File("test.txt", "r"); 
   
   string s=file.readln(); 
   writeln(s);
   
   file.close(); 
} 

编译并执行上述代码后,它将读取上一部分中创建的文件,并产生以下输出-

learnfk

这是另一个读取文件直到文件结束的示例

import std.stdio;
import std.string;

void main() { 
   File file=File("test.txt", "w");  
   file.writeln("hello"); 
   file.writeln("Learnfk");  
   file.close();  
   file=File("test.txt", "r"); 
    
   while (!file.eof()) { 
      string line=chomp(file.readln()); 
      writeln("line -", line); 
   }
} 

编译并执行上述代码后,它将读取上一部分中创建的文件,并产生以下输出-

line -hello 
line -Learnfk 
line -

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Web协议详解与抓包实战 -〔陶辉〕

.NET Core开发实战 -〔肖伟宇〕

职场求生攻略 -〔臧萌〕

TensorFlow 2项目进阶实战 -〔彭靖田〕

实用密码学 -〔范学雷〕

跟着高手学复盘 -〔张鹏〕

打造爆款短视频 -〔周维〕

性能优化高手课 -〔尉刚强〕

云计算的必修小课 -〔吕蕴偲〕

好记忆不如烂笔头。留下您的足迹吧 :)