当前位置: 首页 > news >正文

C++BUG记录:文件无法创建,文件路径正确但使用了Format

问题1:xx.Format()不存在与参数列表匹配的重载函数

问题:文件的路径名字是通过Format转换组合而成的,会报错“FileName.Format()不存在与参数列表匹配的重载函数”。

FileName.Format("%s%d", FilePath, num);//报错:FileName.Format()不存在与参数列表匹配的重载函数

原因:VS默认使用的是“unicode”编码。
解决方案

  • 为Format格式中加入“T_”或者“L”。
FileName.Format(L"%s%d", FilePath, num);
FileName.Format(_T("%s%d"), FilePath, num);
  • 解决方案窗口右键工程名->属性->配置属性->常规->项目默认值->字符集->选择“多字节”。

问题2:Format格式中加入“T_”或者“L”组成的地址,fopen_s无法为其创建文件

问题:问题1中使用Format格式中加入“T_”或者“L”来解决地址转换组合问题,地址路径正确但fopen_s也无法创建文件。

FileName.Format(L"%s%d", FilePath, num);
FileName = FileName + (CString)(".txt");
fopen_s(&file, (const char*)(FileName.GetBuffer()), "wb");//无法创建,返回值是NULL

原因:fopen_s无法识别该编码的路径。
解决方案

  • 解决方案窗口右键工程名->属性->配置属性->常规->项目默认值->字符集->选择“多字节”。
http://www.lryc.cn/news/119443.html

相关文章:

  • nodejs框架 express koa介绍以及从零搭建 koa 模板
  • 84 | Python可视化篇 —— Pyecharts数据可视化
  • 【Nginx】Nginx负载均衡
  • vue3报错
  • 每日一学——IP地址和子网掩码
  • 【redis 3.2 集群】
  • JS 解决鼠标悬浮显示弹窗 迅速离开时弹窗显示到其他位置的延迟问题
  • 树莓派命令行运行调用音频文件的函数,不报错,没有声音解决办法
  • 解决无法引入 mysql-connector-j 的问题
  • 解释器模式(Interpreter)
  • python读入和读出图像
  • 每日一题——最长公共前缀
  • iOS开发-WebRTC本地直播高分辨率不显示画面问题
  • python项目virtualenv环境部署正式项目和后台运行实践
  • 平替 Docker - 玩转容器新利器 Podman Desktop (视频)
  • nodejs+vue+elementui招聘求职网站系统的设计与实现-173lo
  • 静态链接(7/13)
  • jvs-rules API数据源配置说明(含配置APIdemo视频)
  • 爬虫来介绍ChromeF12 谷歌开发者工具 -Network
  • [足式机器人]Part4 机械设计 Ch00/01 绪论+机器结构组成与连接 ——【课程笔记】
  • Android isLoggable定制属于自己的log
  • 【Spring Boot】构建RESTful服务 — 使用Swagger生成Web API文档
  • 【实战】 九、深入React 状态管理与Redux机制(五) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(二十)
  • PHP傻瓜也能搭建自己框架
  • 为什么商业基础软件需要开源
  • 【自用】云服务器 使用 docker 搭建 HomeAssistant + MQTT 物联网平台
  • ABAP: SQL 多值查询
  • 分布式学习最佳实践:从分布式系统的特征开始
  • 第三章 图论 No.8最近公共祖先lca, tarjan与次小生成树
  • [Kubernetes]Kubeflow Pipelines - 基本介绍与安装方法