我有一个这样的数组:
static WCHAR FilesToShow[][100] = { { L"start.cmd" },{ L"image.xml" }, { L"xyz" }};
如您所见,我必须用一些独特的名称替换“xyz”。为此,我必须阅读 image.xml 文件。
请你告诉我我该怎么做。
我写了一个这样的方法:
PRIVATE WCHAR GetSystemName(WCHAR *pName)
{
WCHAR line;
wfstream in("image.xml");
WCHAR tmp;
bool begin_tag = false;
while (getline(in,line))
{
// strip whitespaces from the beginning
for (int i = 0; i < line.length(); i++)
{
if (line[i] == ' ' && tmp.size() == 0)
{
}
else
{
tmp += line[i];
}
}
if (wcswcs(tmp,"<SystemPath>") != NULL)
{
???????? how to get "vikash" from here <SystemPath>C:\Users\rs_user\Documents\RobotStudio\Systems\vikash</SystemPath>
}
else
{
continue;
}
}
return tmp;
}
我遇到了 wfstream、getline 和 line.length() 方法的异常。我已经包含了 fstream.h 头文件,但我认为 COM 不支持它。
请帮助我如何在不解析 xml 文件的情况下解决此问题。