标签:blog ar for sp 文件 on 2014 log ad
import sys
def HandleCPlusPlusComment(lines,i):
index = lines[i].find("//")
if index !=-1:
lines[i]=lines[i][0:index]
lines[i]+="\r\n"
def HandleCComment(lines,i):
global bhasCCommentBegin
while True:
if not bhasCCommentBegin:
index = lines[i].find("/*")
if index != -1:
bhasCCommentBegin = True
index2 = lines[i].find("*/",index+2)
if index2 != -1:
lines[i]=lines[i][0:index]+lines[i][index2+2:-1]
bhasCCommentBegin = False #continue look for comment
else:
lines[i]=lines[i][0:index] # only find "begin comment
lines[i]+="\r\n"
return -2
else:
return 0 #not find
else:
index2=lines[i].find("*/")
if index2 !=-1:
bhasCCommentBegin = False
lines[i]=lines[i][index2+2:-1] #continue look for comment
else:
return -1 #should delete this
def RemoveComment(file):
global bhasCCommentBegin
f = open(file,"r")
lines = f.readlines()
leng =len(lines)
i=0
while i<leng:
ret = HandleCComment(lines,i)
if ret == -1:
if bhasCCommentBegin == False:
print "There must be some wrong"
del lines[i]
i -= 1
leng -= 1
elif ret== 0:
HandleCPlusPlusComment(lines,i)
else:
pass
i+=1
Output(lines)
bhasCCommentBegin = False
def Output(lines):
for line in lines:
print line,
if __name__== '__main__':
RemoveComment(sys.argv[1])
标签:blog ar for sp 文件 on 2014 log ad
原文地址:http://blog.csdn.net/smartfox80/article/details/40793915