c++获取读写文本权限

#include<cstdio>
#include<iostream>
#include<fstream>
using namespace std;
int tot;
int main(){
    ifstream infile("1.txt",ios::in);//没有不报错 
    infile>>tot;
    cout<<++tot<<endl;//输出到屏幕 
    infile.close();
    ofstream outfile("1.txt",ios::out);
    outfile<<tot;
    outfile.close();
    //用处大大的 
    return 0;
}

 同理

#include<cstdio>
#include<iostream>
using namespace std;
int tot;
int main(){
    freopen("1.in","r",stdin);
    scanf("%d",&tot);
    fclose(stdin);
    freopen("1.in","w",stdout);
    tot++;
    printf("%d",tot);
    fclose(stdout);
    return 0;
}

 

转载于:https://www.cnblogs.com/shenben/p/5620689.html

### 使用 `fopen` 函数设置文件读写权限 在 C 和 MATLAB 中,`fopen` 函数都可以用来打开文件并指定访问模式。以下是关于如何使用 `fopen` 函数来设置文件的读写权限的具体说明。 #### 在 C/C++ 中设置文件读写权限 C 标准库中的 `fopen()` 函数允许通过传递不同的模式字符串来控制文件的读取、写入或其他操作方式。常见的模式包括: - `"r"`:只读模式,文件必须存在。 - `"w"`:写入模式,如果文件不存在则创建新文件;如果文件已存在,则清空其内容。 - `"a"`:追加模式,在文件末尾添加数据,不会覆盖现有内容。 - `"r+"`:读写模式,文件必须存在。 - `"w+"`:读写模式,如果文件不存在则创建新文件;如果文件已存在,则清空其内容。 - `"a+"`:读写模式,文件指针指向文件末尾,可以向文件中追加数据[^1]。 下面是一个简单的示例代码,展示如何以读写模式 (`"w+"`) 打开文件,并执行基本的操作: ```c #include <stdio.h> int main() { FILE *file; file = fopen("example.txt", "w+"); if (file == NULL) { printf("无法打开文件\n"); return 1; // 返回错误状态 } const char *message = "这是一个测试消息。\n"; fwrite(message, sizeof(char), strlen(message), file); // 写入数据 rewind(file); // 将文件指针移回起始位置以便读取刚写入的内容 char buffer[256]; fgets(buffer, sizeof(buffer), file); printf("从文件读取的数据:%s", buffer); fclose(file); // 关闭文件 return 0; } ``` 此程序演示了如何以读写模式打开名为 `example.txt` 的文件,先写入一些文本再将其读回到标准输出流中[^1]。 #### 在 MATLAB 中设置文件读写权限 MATLAB 提供了一个类似的 `fopen` 函数用于处理文件 I/O 操作。它的调用形式如下所示: ```matlab fid = fopen('filename', 'permission'); ``` 这里的 `'permission'` 参数决定了文件被打开的方式,常用的选项有: - `'r'` 表示只读, - `'w'` 表示写入(会清除原有内容), - `'a'` 追加到文件末尾而不删除已有内容, - `'r+'`, `'w+'`, 或者 `'a+'` 则分别表示对应的可读写的组合模式[^2]。 以下是一段 MATLAB 脚本的例子,展示了怎样利用 `fopen` 创建一个具有读写能力的新文件,并完成基础输入/输出任务: ```matlab % 定义要保存至文件的信息 dataToWrite = ['这是来自MATLAB的一条消息']; % 打开文件 example.mat 并赋予 w+ 权限(即新建或重置该文件) fid = fopen('example.mat', 'w+'); if fid == -1 error('无法创建或者打开目标文件!'); end fprintf(fid, '%s\n', dataToWrite); % 向文件写入一条记录 rewind(fid); % 移动光标返回开头准备读取刚才存储进去的东西 readData = fscanf(fid, '%c'); % 把整个文件作为字符数组一次性取出 disp(readData); % 显示所读取的结果 fclose(fid); % 结束时记得关闭资源连接 ``` 这段脚本同样实现了对文件的同时读写功能,不过它是基于 MATLAB 环境下的实现方法[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值