## @file\r
# Define a dictionary structure\r
#\r
-# Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
# which accompanies this distribution. The full text of the license may be found at\r
#\r
import EdkLogger\r
from DataType import *\r
+from Common.LongFilePathSupport import OpenLongFilePath as open\r
\r
## Convert a text file to a dictionary\r
#\r
# @retval 1 Open file failed\r
#\r
def ConvertTextFileToDictionary(FileName, Dictionary, CommentCharacter, KeySplitCharacter, ValueSplitFlag, ValueSplitCharacter):\r
- try:\r
- F = open(FileName,'r')\r
- Keys = []\r
- for Line in F:\r
- if Line.startswith(CommentCharacter):\r
- continue\r
- LineList = Line.split(KeySplitCharacter,1)\r
- if len(LineList) >= 2:\r
- Key = LineList[0].split()\r
- if len(Key) == 1 and Key[0][0] != CommentCharacter and Key[0] not in Keys:\r
- if ValueSplitFlag:\r
- Dictionary[Key[0]] = LineList[1].replace('\\','/').split(ValueSplitCharacter)\r
- else:\r
- Dictionary[Key[0]] = LineList[1].strip().replace('\\','/')\r
- Keys += [Key[0]]\r
- F.close()\r
- return 0\r
- except:\r
- EdkLogger.info('Open file failed')\r
- return 1\r
+ try:\r
+ F = open(FileName, 'r')\r
+ Keys = []\r
+ for Line in F:\r
+ if Line.startswith(CommentCharacter):\r
+ continue\r
+ LineList = Line.split(KeySplitCharacter, 1)\r
+ if len(LineList) >= 2:\r
+ Key = LineList[0].split()\r
+ if len(Key) == 1 and Key[0][0] != CommentCharacter and Key[0] not in Keys:\r
+ if ValueSplitFlag:\r
+ Dictionary[Key[0]] = LineList[1].replace('\\', '/').split(ValueSplitCharacter)\r
+ else:\r
+ Dictionary[Key[0]] = LineList[1].strip().replace('\\', '/')\r
+ Keys += [Key[0]]\r
+ F.close()\r
+ return 0\r
+ except:\r
+ EdkLogger.info('Open file failed')\r
+ return 1\r
\r
## Print the dictionary\r
#\r
# @param Dict: The dictionary to be printed\r
#\r
def printDict(Dict):\r
- if Dict != None:\r
- KeyList = Dict.keys()\r
- for Key in KeyList:\r
- if Dict[Key] != '':\r
- print Key + ' = ' + str(Dict[Key])\r
+ if Dict != None:\r
+ KeyList = Dict.keys()\r
+ for Key in KeyList:\r
+ if Dict[Key] != '':\r
+ print Key + ' = ' + str(Dict[Key])\r
\r
## Print the dictionary\r
#\r
# @param key: The key of the item to be printed\r
#\r
def printList(Key, List):\r
- if type(List) == type([]):\r
- if len(List) > 0:\r
- if key.find(TAB_SPLIT) != -1:\r
- print "\n" + Key\r
- for Item in List:\r
- print Item\r
+ if type(List) == type([]):\r
+ if len(List) > 0:\r
+ if Key.find(TAB_SPLIT) != -1:\r
+ print "\n" + Key\r
+ for Item in List:\r
+ print Item\r