c++写数据结构进入文件

以下定义一个数据结构

c 复制代码
struct SData {
	std::string url;
	int number;
	std::string memo;
};

写入文件

c 复制代码
void StorageDataToFile(const std::string& filename, const SData& data) {
   std::ofstream outFile(filename);
   if (outFile.is_open()) {
   	// 使用std::stringstream格式化数据
   	std::stringstream ss;
   	ss << data.url << "," << data.member << "," << data.memo << "\n";
   	// 将格式化后的字符串写入文件
   	outFile << ss.str();

   	outFile.close();
   	AfxMessageBox(L"ok storage") ;
   }
   else {
   	AfxMessageBox(L"error");
   }
}

读取

c 复制代码
UserData ReadDataFromFile(const std::string& filename) {
	SData data;
	std::ifstream inFile(filename);
	if (inFile.is_open()) {
		std::string line;
		getline(inFile, line);
		std::istringstream iss(line);
		if (iss >> data.url>> data.number >> data.memo) {
			inFile.close();
			return userData;
		}
		else {
			AfxMessageBox(L"error");
		}
	}
	else {
		AfxMessageBox(L"error");
	}

	// 如果读取失败,返回默认构造的UserData
	return UserData();
}
相关推荐
每天进步一点_JL9 分钟前
JVM 类加载:双亲委派机制
java·后端
用户2986985301443 分钟前
Java HTML 转 Word 完整指南
java·后端
渣哥1 小时前
原来公平锁和非公平锁差别这么大
java
渣哥1 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K1 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
kfyty7251 小时前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构
isysc13 小时前
面了一个校招生,竟然说我是老古董
java·后端·面试
River4163 小时前
Javer 学 c++(十三):引用篇
c++·后端
感哥6 小时前
C++ std::set
c++
道可到6 小时前
Java 反射现代实践速查表(JDK 11+/17+)
java