hxp
2018-08-10 ccfc87e02e2ae7d153bbab0754639a1a663d34d3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#-*- coding: GBK -*-
#¶ÁÈ¡Óû§ÅäÖÃÎļþ
#×÷Õߣºifo
 
import DataFileReader
import logging
import traceback
 
class tagDBPlayer( DataFileReader.DataFileReader ):
    _SKIP_LINES = 1
    _SKIP_COLUMNS = 0
 
    def __init__(self,filename):
        DataFileReader.DataFileReader.__init__( self )
        self.configList = []
        # Óû§ÅäÖÃÎļþµÄËùÔÚ·¾¶
        try:
            if not self.Open(filename):                # ´ò¿ªÎļþ
                logging.fatal( "tagDBPlayer File[%s] no found" % filename )
                return
        except Exception, e:
            print str(e)
            print traceback.print_exc()
            logging.error( str(e) )
            logging.error( traceback.print_exc() )
        logging.info( "tagDBPlayer File[%s] open successfully" % filename )
        
    def _ProcessData( self, datalist):
        import tagDBPlayerParam
        self.configList.append( tagDBPlayerParam.tagDBPlayerParam(datalist,self.commentline) )
     
    #·µ»ØÓÐЧÄÚÈÝÌõÊý
    def GetRecordCount(self):
        return len(self.configList)
    
    #ͨ¹ýË÷Òý·µ»ØÄÚÈÝ
    def GetRecordByIndex(self,index):
        return self.configList[index]
    
    def GetCommentLine(self):
        commentlinelist = self.commentline.replace( "\n", "\t" ).split( "\t" )
        commentlinelist.pop()
        return commentlinelist
    
    def __str__(self):
        strRet = ""
        for param in self.configList:
            strRet += str(param) + "\n"
        return strRet
 
 
__gtagDBPlayer = None
 
def ReadConfig( filename ):
    global __gtagDBPlayer
    if not __gtagDBPlayer:
        __gtagDBPlayer =  tagDBPlayer( filename )
        
        
def GetConfig():
    global __gtagDBPlayer
    return __gtagDBPlayer
 
 
if __name__ == '__main__':
    ReadConfig("tagDBPlayer.txt")
    newConfig = GetConfig()
    print newConfig.GetRecordCount()
    record1 = newConfig.GetRecordByIndex( 2 )
    record2 = newConfig.GetRecordByIndex( 100 )
#    print record2.GetAccID()
#    print record2.Adult
    print newConfig.GetCommentLine()
    print newConfig.__str__()