贴一段android的代码,一看就懂
以下代码为vold检测u盘是否挂载的代码,通过查看path是否存在,来确定u盘是否挂载成功
sscanf(line, "%255s %255s %255s\n", device, mount_path, rest);为解析字符串的操作
bool Volume::isMountpointMounted(const char *path) {
char device[256];
char mount_path[256];
char rest[256];
FILE *fp;
char line[1024];
if (!(fp = fopen("/proc/mounts", "r"))) {
SLOGE("Error opening /proc/mounts (%s)", strerror(errno));
return false;
}
while(fgets(line, sizeof(line), fp)) {
line[strlen(line)-1] = '\0';
sscanf(line, "%255s %255s %255s\n", device, mount_path, rest);
if (!strcmp(mount_path, path)) {
fclose(fp);
return true;
}
}
fclose(fp);
return false;
}