下了android2.2的代码后发现都是放在一个个子目录里的,不好用eclipse直接参照过去,所以准备把他们整到一个目录。手工的话怕麻烦,而且前段时间看过python,决定就拿它炼炼手了。在baidu的帮组下搞出来下面这个东西。
做完也没发现和Java有什么太大区别
#!/usr/bin/env python
import os
import shutil
class GetSource(object):
def __init__(self, url, dst):
self.url = url
self.dst = dst
self.dirs = []
def getSubDirs(self):
files = os.listdir(self.url)
for file in files:
if os.path.isdir(self.url + file):
self.dirs.append(file)
return self.dirs
def printSubDirs(self):
print(self.dirs)
def copyJavaDirs(self):
for dir in self.dirs:
javaDir = os.path.join(self.url, dir, "java")
if os.path.isdir(javaDir):
copyDir(javaDir,self.dst)
# 据说win32file也可以做这件事,但是学习吗还是自己做个炼炼
def copyDir(src, dst):
print("copy:" + src + "\tto:" + dst)
files = os.listdir(src)
for file in files:
fileSrc = os.path.join(src,file)
fileDst = os.path.join(dst,file)
if os.path.exists(fileDst):
if os.path.isfile(fileSrc):
print(fileSrc + " is already exist.")
else:
# 递归
copyDir(fileSrc, fileDst)
else:
if os.path.isfile(fileSrc):
shutil.copy2(fileSrc,fileDst)
else:
shutil.copytree(fileSrc,fileDst)
if __name__ == '__main__':
d = GetSource("C:\\Users\\cy-mu\\OHA-Android-2.2_r1.1\\frameworks\\base\\", "d:\\004.temp\\android")
d.getSubDirs()
d.printSubDirs()
d.copyJavaDirs()
print("over")
做完也没发现和Java有什么太大区别