Russian Qt Forum
Май 18, 2024, 00:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не получается посмотреть Value  (Прочитано 3862 раз)
dangreen
Гость
« : Август 01, 2011, 21:14 »

Есть xml файл:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Application-Group</key>
<string>AirPort</string>
<key>BuildMachineOSBuild</key>
<string>11A494</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleDisplayName</key>
<string>Install Mac OS X Lion</string>
<key>CFBundleExecutable</key>
<string>Install Mac OS X Lion</string>
<key>CFBundleGetInfoString</key>
<string>Install Mac OS X Lion, Copyright © 2007-2011 Apple Inc. All rights reserved.</string>
<key>CFBundleIconFile</key>
<string>InstallAssistant</string>
<key>CFBundleIdentifier</key>
<string>com.apple.InstallAssistant.Lion</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>Install Mac OS X Lion</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.4</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>197</string>
<key>DTCompiler</key>
<string></string>
<key>DTPlatformBuild</key>
<string></string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>11A494</string>
<key>DTSDKName</key>
<string></string>
<key>DTXcode</key>
<string>0410</string>
<key>DTXcodeBuild</key>
<string></string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.utilities</string>
<key>LSArchitecturePriority</key>
<array>
<string>x86_64</string>
<string>i386</string>
<string>ppc</string>
</array>
<key>LSMinimumSystemVersion</key>
<string>10.6.6</string>
<key>LSMinimumSystemVersionByArchitecture</key>
<dict>
<key>x86_64</key>
<string>10.6</string>
</dict>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSSupportsSuddenTermination</key>
<true/>
</dict>
</plist>

Есть слот для обработки файла:
Код:
void MainWindow::getApp()
{
   QString app=QFileDialog::getOpenFileName(this,tr("choice OS X Lion Retail Installer"),"/",tr("Apps (*.app)"));
   QDomDocument OS_ver;
   QFile file(app+"/Contents/Info.plist");
    if (!file.open(QIODevice::ReadOnly)) {
        QMessageBox::warning(this,"Warning","This app not a Mac OS X Retail Installer!");
        return;
    }
    if (!OS_ver.setContent(&file)) {
        file.close();
        return;
    }
   file.close();
   for(int i=0;i<OS_ver.childNodes().at(1).firstChild().childNodes().count();i++) {
       qDebug()<<OS_ver.childNodes().at(1).firstChild().childNodes().at(i).nodeValue();
       qDebug()<<OS_ver.childNodes().at(1).firstChild().childNodes().at(i).nodeName();
       qDebug()<<i;
       if(OS_ver.childNodes().at(1).firstChild().childNodes().at(i).nodeValue()=="CFBundleGetInfoString")
       {
           qDebug()<<"im here";
        if(OS_ver.childNodes().at(1).firstChild().childNodes().at(i+1).nodeValue()=="10.5, Copyright 2001-2007 Apple Inc.") ui->OS_name->setText("Mac OS X 10.5 Leopard");
        if(OS_ver.childNodes().at(1).firstChild().childNodes().at(i+1).nodeValue()=="Install Mac OS X 1.0, Copyright © 2007-2009 Apple Inc. All rights reserved") ui->OS_name->setText("Mac OS X 10.6 Snow Leopard");
        if(OS_ver.childNodes().at(1).firstChild().childNodes().at(i+1).nodeValue()=="Install Mac OS X Lion, Copyright © 2007-2011 Apple Inc. All rights reserved.") ui->OS_name->setText("Mac OS X 10.7 Lion");
        break;
       }
   }
}

Слот не выполняет поставленной задачи, по той простой причине что не видит NodeValue
debug:
Код:
"" 
"key"
0
""
"string"
1
""
"key"
2
""
"string"
3
""
"key"
4
""
"string"
5
""
"key"
6
""
"string"
7
""
"key"
8
""
"string"
9
""
"key"
10
""
"string"
11
""
"key"
12
""
"string"
13
""
"key"
14
""
"string"
15
""
"key"
16
""
"string"
17
""
"key"
18
""
"string"
19
""
"key"
20
""
"string"
21
""
"key"
22
""
"string"
23
""
"key"
24
""
"string"
25
""
"key"
26
""
"string"
27
""
"key"
28
""
"string"
29
""
"key"
30
""
"string"
31
""
"key"
32
""
"string"
33
""
"key"
34
""
"string"
35
""
"key"
36
""
"string"
37
""
"key"
38
""
"string"
39
""
"key"
40
""
"string"
41
""
"key"
42
""
"string"
43
""
"key"
44
""
"array"
45
""
"key"
46
""
"string"
47
""
"key"
48
""
"dict"
49
""
"key"
50
""
"string"
51
""
"key"
52
""
"string"
53
""
"key"
54
""
"true"
55


Помогите пожалусто разобраться в чем проблема
Записан
dangreen
Гость
« Ответ #1 : Август 27, 2011, 19:15 »

ну поможет кто, а?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.059 секунд. Запросов: 17.