import Common.LongFilePathOs as os\r
import sys\r
import re\r
-import StringIO\r
+from io import BytesIO\r
\r
from optparse import OptionParser\r
from optparse import make_option\r
CreateDirectory(os.path.dirname(Target))\r
\r
try:\r
- f = open (Source,'r')\r
+ f = open (Source, 'r')\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, ExtraData=Source)\r
# read whole file\r
\r
# save all lines trimmed\r
try:\r
- f = open (Target,'w')\r
+ f = open (Target, 'w')\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, ExtraData=Target)\r
f.writelines(Lines)\r
if IncludePathFile:\r
try:\r
LineNum = 0\r
- for Line in open(IncludePathFile,'r'):\r
+ for Line in open(IncludePathFile, 'r'):\r
LineNum += 1\r
if Line.startswith("/I") or Line.startswith ("-I"):\r
IncludePathList.append(Line[2:].strip())\r
\r
# save all lines trimmed\r
try:\r
- f = open (Target,'w')\r
+ f = open (Target, 'w')\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, ExtraData=Target)\r
\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, "File open failed for %s" %OutputFile, None)\r
\r
- # Use a instance of StringIO to cache data\r
- fStringIO = StringIO.StringIO('')\r
+ # Use a instance of BytesIO to cache data\r
+ fStringIO = BytesIO('')\r
\r
for Item in VfrUniOffsetList:\r
if (Item[0].find("Strings") != -1):\r
CreateDirectory(os.path.dirname(Target))\r
\r
try:\r
- f = open (Source,'rb')\r
+ f = open (Source, 'rb')\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, ExtraData=Source)\r
# read whole file\r
f.close()\r
\r
NewLines = None\r
- for Re,Repl in gImportCodePatterns:\r
+ for Re, Repl in gImportCodePatterns:\r
if NewLines is None:\r
NewLines = Re.sub(Repl, Lines)\r
else:\r
return\r
\r
try:\r
- f = open (Target,'wb')\r
+ f = open (Target, 'wb')\r
except:\r
EdkLogger.error("Trim", FILE_OPEN_FAILURE, ExtraData=Target)\r
f.write(NewLines)\r