# -*- coding: GBK -*-  
 | 
#¶ÁÈ¡Excel±£´æµÄÅäÖÃÎļþµÄ±ãÀû·â×°À࣬¿ÉÒÔÉèÖúöÂÔµÄÐкÍÁеÄÊýÁ¿  
 | 
# author: troring  
 | 
# Date: 2011.9.1  
 | 
# history:  2011.9.1     Created  
 | 
  
 | 
  
 | 
import logging  
 | 
import traceback  
 | 
  
 | 
class DataFileReader(object):  
 | 
    _SKIP_LINES = 1  
 | 
    _SKIP_COLUMNS = 1  
 | 
    def __init__( self ):  
 | 
        self.commentline = 0  
 | 
  
 | 
    def _ProcessData( self, datalist):  
 | 
        pass  
 | 
  
 | 
    def _ProcessLine( self, line):  
 | 
        new = line.replace( "\n", "\t" )  
 | 
        e = new.split( "\t" )  
 | 
        skip = self._SKIP_COLUMNS  
 | 
        self._ProcessData( e[skip:])  
 | 
  
 | 
    def Open( self, filename ):  
 | 
        try:  
 | 
            fp = open( filename )  
 | 
        except Exception, e:  
 | 
            print str(e)  
 | 
            print traceback.print_exc()  
 | 
            logging.error( str(e) )  
 | 
            logging.error( traceback.print_exc() )  
 | 
            return False  
 | 
  
 | 
        skip = self._SKIP_LINES  
 | 
        first = 1  
 | 
        for line in fp:  
 | 
            if 0 == skip:  
 | 
                if first == 1:  
 | 
                    self.commentline = line  
 | 
                    first = 0  
 | 
                else:  
 | 
                    self._ProcessLine( line )  
 | 
            else:  
 | 
                skip -= 1  
 | 
                continue  
 | 
        return True  
 |