用UTF8编程地挂载FAT32文件系统
Programmatically mounting a FAT32 filesystem with UTF8
如何使用"mount()"函数(来自"mount.h",请参阅"man 2 mount")挂载FAT/FAT32设备,以便将其挂载为UTF8?
这是我到现在为止用来挂载它的相关代码:
mount_result = mount(device_node, device_mount_point, fstype, MS_NOATIME, "");
谢谢,尼古拉
从手册:
data参数由不同的文件系统解释。通常,它是由逗号分隔的选项组成的字符串,该文件系统可以理解。
在mount(8)的手册中," mount options for vfat":
因此,这应该为您提供所需的行为:utf8:UTF8是控制台使用的文件系统安全的Unicode 8位编码。它可以通过这个选项为文件系统启用。如果设置了'uni_xlate',则禁用UTF8。
mount_result = mount(device_node, device_mount_point, fstype, MS_NOATIME, "utf8");
mount命令的最后一个参数是由内核中的文件系统驱动程序解释的字符串。这与您传递给mount shell命令的方式相同。对于UTF8,我认为字符串应该是:
mount_result = mount(device_node, device_mount_point, fstype, MS_NOATIME, "iocharset=utf8");
我想你可能需要试试"utf8=1"
相关文章:
- 文件系统:复制功能的速度秘诀是什么
- c++17文件系统::recursive_directory迭代器()在mac上没有给出这样的目录,但在windows上
- 如何传递多个 std::文件系统选项?
- 遍历顺序由 std::文件系统directory_iterator给出
- libstdc++ 文件系统中未初始化的用法?
- boost::文件系统::recursive_directory_iterator多线程安全
- C++17 文件系统::remove_all 带有通配符路径
- 实验性文件系统库不完整C++?
- 使用文件系统时仍然需要链接到带有 C++20 的 stdc++fs?
- 无法链接文件系统库C++
- 无法识别 Mac c++ 文件系统库
- 使用Boost文件系统C++将具有特定扩展名的文件的名称保存在特定文件夹中
- 获取 clang++:错误:在编译文件系统库的代码时
- C++17 文件系统在 Windows 10 上使用 nuwen MinGW
- C++ VS 错误:<实验/文件系统>提供 std::experimental::文件系统的标头已被Microsoft弃用,将被删除
- 如何修复 MinGW 文件系统探针?
- 将 boost::文件系统::p ath 转换为 char?
- 我可以在 ndk 中使用带有 libc++ 的实验性文件系统吗?
- 是否可以使用 std::文件系统获取根名称列表?
- 用UTF8编程地挂载FAT32文件系统