Mac OS系统自身包含有转换plist的工具:plutil.其中-p是以human可读方式显示plist文件,而convert就是转换参数,其中支持的格式有:xml,二进制和json。下面拿一个实际例子测试下,该plist文件是二进制文件:

apple@kissAir: Contents$ls

Info.plist MacOS     
Resources

apple@kissAir: Contents$cat I*

bplist00?

!"#$%&'()*(WDTXcodeYDTSDKName_NSPrefPaneIconFile\CFBundleNameZDTSDKBuild_CFBundleDevelopmentRegion_CFBundleVersion_BuildMachineOSBuild_NSPrincipalClass]NSMainNibFile_NSPrefPaneSearchParameters_SSupportsSuddenTermination_CFBundlePackageType_CFBundleInfoDictionaryVersion_CFBundleExecutableZDTCompiler_CFBundleIdentifier_DTPlatformVersion\DTXcodeBuild_CFBundleSignature_NSPrefPaneIconLabel_DTPlatformBuildT0463Zmacosx10.6_FlashPlayerPreferences.png\Flash
PlayerV10K549WEnglishZ15.0.0.239U12F45_FSPreferencesMain_FlashPlayerPreferencesTtrueTBNDLS6.0\Flash PlayerP_ com.adobe.flashplayerpreferencesRGMV4H1503T????\Flash Playe7?I^kv??????,Lal????????

'28Lejos??????+?

显示其内容:

plutil -p I*

{

"DTXcode" => "0463"

"DTSDKName" => "macosx10.6"

"NSPrefPaneIconFile" => "FlashPlayerPreferences.png"

"CFBundleName" => "Flash Player"

"DTSDKBuild" => "10K549"

"CFBundleDevelopmentRegion" => "English"

"CFBundleVersion" => "15.0.0.239"

"BuildMachineOSBuild" => "12F45"

"NSPrincipalClass" => "FSPreferencesMain"

"NSMainNibFile" => "FlashPlayerPreferences"

"NSPrefPaneSearchParameters" => "FlashPlayerPreferences"

"NSSupportsSuddenTermination" => "true"

"CFBundlePackageType" => "BNDL"

"CFBundleInfoDictionaryVersion" => "6.0"

"CFBundleExecutable" => "Flash Player"

"DTCompiler" => ""

"CFBundleIdentifier" => "com.adobe.flashplayerpreferences"

"DTPlatformVersion" => "GM"

"DTXcodeBuild" => "4H1503"

"CFBundleSignature" => "????"

"NSPrefPaneIconLabel" => "Flash Player"

"DTPlatformBuild" => "4H1503"

}


转换:

apple@kissAir: Contents$plutil -convert xml1 I* -o ~/x


这是转换后的内容:

apple@kissAir: ~$file x

x: XML document text

apple@kissAir: ~$cat x

<?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>BuildMachineOSBuild</key>

<string>12F45</string>

<key>CFBundleDevelopmentRegion</key>

<string>English</string>

<key>CFBundleExecutable</key>

<string>Flash Player</string>

<key>CFBundleIdentifier</key>

<string>com.adobe.flashplayerpreferences</string>

<key>CFBundleInfoDictionaryVersion</key>

<string>6.0</string>

<key>CFBundleName</key>

<string>Flash Player</string>

<key>CFBundlePackageType</key>

<string>BNDL</string>

<key>CFBundleSignature</key>

<string>????</string>

<key>CFBundleVersion</key>

<string>15.0.0.239</string>

<key>DTCompiler</key>

<string></string>

<key>DTPlatformBuild</key>

<string>4H1503</string>

<key>DTPlatformVersion</key>

<string>GM</string>

<key>DTSDKBuild</key>

<string>10K549</string>

<key>DTSDKName</key>

<string>macosx10.6</string>

<key>DTXcode</key>

<string>0463</string>

<key>DTXcodeBuild</key>

<string>4H1503</string>

<key>NSMainNibFile</key>

<string>FlashPlayerPreferences</string>

<key>NSPrefPaneIconFile</key>

<string>FlashPlayerPreferences.png</string>

<key>NSPrefPaneIconLabel</key>

<string>Flash Player</string>

<key>NSPrefPaneSearchParameters</key>

<string>FlashPlayerPreferences</string>

<key>NSPrincipalClass</key>

<string>FSPreferencesMain</string>

<key>NSSupportsSuddenTermination</key>

<string>true</string>

</dict>

</plist>


Mac OS 的属性列表文件plist装换的更多相关文章

  1. [Xcode 实际操作]七、文件与数据-(9)编码创建Plist文件(属性列表文件)

    目录:[Swift]Xcode实际操作 本文将演示如何通过编码的方式,创建属性列表文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...

  2. [Xcode 实际操作]七、文件与数据-(8 )读取和解析Plist文件(属性列表文件)

    目录:[Swift]Xcode实际操作 本文将演示如何读取和解析Plist文件,即属性列表文件. 它是用来存储,串行化后的对象的文件. 在项目名称上点击鼠标右键,弹出右键菜单, 选择[New File ...

  3. iOS开发备忘录:属性列表文件数据持久化

    属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换. NSArray类常用读写属性列表文件的方法: +arrayWithContentsOfFile:类 ...

  4. iOS开发之数据存储之XML属性列表(plist)归档

    1.概述 “归档”意思是持久化存储数据.plist文件是一种XML格式的文件,拓展名为plist.如果对象是NSString.NSDictionary.NSArray.NSData.NSNumber等 ...

  5. [Xcode 实际操作]七、文件与数据-(3)创建文本文件、属性列表文件、图片文件

    目录:[Swift]Xcode实际操作 本文将演示如何创建各种类型的文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class V ...

  6. Mac OS环境下媒体文件分割工具mediafilesegmenter的简单使用(生成M3U8 TS文件)

    mediafilesegmenter是苹果开发的一款用于分割媒体文件的工具,其功能与mediastreamsegmenter相似,但操作更简单. * 具体可以对比博客中的另一篇简介<Mac OS ...

  7. mac os去除去除.DS_Store文件--使用python和go(原创)

    .DS_Store (英文全称 Desktop Services Store)是一种由苹果公司的Mac OS X操作系统所创造的隐藏文件,目的在于存贮文件夹的自定义属性,例如文件们的图标位置或者是背景 ...

  8. 苹果Mac OS系统修改Hosts文件的方法

    使用苹果Mac OS X系统的用户有很多,近期也有不少童鞋问我Mac怎么修改hosts,修改hosts的方式有很多,下面我就整理两种比较方便的方法吧,希望能够帮到大家. 在某些时候可能遇到了需要修改系 ...

  9. 删除Mac OS X中Finder文件打开方式列表的重复程序或失效的

    清理列表, 可以在终端中输入下面提供的一行命令: /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices ...

随机推荐

  1. C/C++的mem函数和strcpy函数的区别和应用

    mem系列函数是面试的时候常考的知识点,我们需要熟练掌握这三个函数的原理和代码实现,要能准确无误的写出代码. memcpy.memset和memset三个函数在使用过程中,均需包含以下头文件: //在 ...

  2. FFmpeg源代码简单分析:内存的分配和释放(av_malloc()、av_free()等)

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  3. Android开发学习之路--RxAndroid之操作符

      学习了RxAndroid的一些基本知识,上篇文章也试过了RxAndroid的map操作符,接着来学习更多的操作符的功能吧.   操作符就是为了解决对Observable对象的变换的问题,操作符用于 ...

  4. 单幅图像的深度学习,对NYU数据集进行划分

    针对分割问题,官方已经划分好了:http://cs.nyu.edu/~silberman/projects/indoor_scene_seg_sup.html import numpy as np i ...

  5. Java基础----Java---集合框架---泛型、泛型方法、静态方法泛型、泛型接口、泛型限定、泛型类

    泛型:jdk1.5后的新特性,用于解决安全问题,是一个安全机制. 好处: 1.将运行时的异常出现问题classcastException.转移到了编译时期.方便程序员调试解决问题,让运行事情问题减少, ...

  6. Oracle 总账年终结算流程

     1.Oracle 总账应用中年终结算流程包含在开启/关闭期间程序里.当用户开启新一年的第一个期间,开启/关闭期间程序中的"gloire" 流程会完成传送所有收入及支出(损益表 ...

  7. Java-IO之PipedReader和PipedWriter

    PipedReader和PipedWriter与PipedInputStream和PipedOutputStream一样,都可以用于管道通信.PipedWriter是字符管道输出流,继承于Writer ...

  8. UE4帧动画Matineed

    发一句牢骚,ue4除了渲染好一点,其他操作都没有unity便利,最近需要在项目中,调几个简单的动画使用到了Matineed,相当不好用.也可能是unity转ue4,有先入为主的观念,哈哈,never ...

  9. SDK目录结构

    android sdk里的各目录作用 AVD Manager.exe:虚拟机管理工具,用于建立和管理虚拟机. SDK Manager.exe:sdk管理工具,用于管理.下载sdk.sdk工具,能及扩展 ...

  10. 常用js总结

    通过radio来显示/隐藏一个div <div id="ArbAcei" > <br/> 有无不良反应停药 <input type="rad ...