code: def _getStringStream(self, filename, prefer='unicode'):
          
  
          if isinstance(filename, list):
              # Join with slashes to make it easier to append the type
              filename = "/".join(filename)
  
          asciiVersion = self._getStream(filename + '001E')
          unicodeVersion = windowsUnicode(self._getStream(filename + '001F'))
          if asciiVersion is None:
              return unicodeVersion
          elif unicodeVersion is None:
              return asciiVersion.decode('ascii', 'ignore')
          else:
              if prefer == 'unicode':
                  return unicodeVersion
              else:
                  return asciiVersion.decode('ascii', 'ignore')
docs: Gets a string representation of the requested filename.
          Checks for both ASCII and Unicode representations and returns
          a value if possible.  If there are both ASCII and Unicode
          versions, then the parameter /prefer/ specifies which will be
          returned.