Пример #1
0
def set(name,value,type='auto',directory=None):
    """Saves a resource to disk under the given name."""
    if type == 'auto':
        type = filenameToType(name)
    if directory==None:
        directory = getDirectory()    
    fn = os.path.join(directory,name)
    _ensure_dir(fn)
    if type == 'xml':
        raise NotImplementedError("TODO: save xml files from Python API")
    elif type == 'json':
        f = open(fn,'w')
        f.write(loader.toJson(value,type=type))
        f.write('\n')
        f.close()
        return True
    else:
        return loader.save(value,type,fn)
Пример #2
0
def set(name, value, type='auto', directory=None):
    """Saves a resource to disk under the given name."""
    if type == 'auto':
        type = filenameToType(name)
    if directory == None:
        directory = getDirectory()
    fn = os.path.join(directory, name)
    _ensure_dir(fn)
    if type == 'xml':
        raise NotImplementedError("TODO: save xml files from Python API")
    elif type == 'json':
        f = open(fn, 'w')
        f.write(loader.toJson(value, type=type))
        f.write('\n')
        f.close()
        return True
    else:
        return loader.save(value, type, fn)
Пример #3
0
def set(name,value,type='auto',directory=None):
    """Saves a resource to disk under the given name.

    Args:
        name (str): the file name.  Please make sure to get the right file
            extension.  .json files are also OK for many types.
        value: a Klamp't resource (see list of compatible types in get())
        type (str, optional): The resource type.  If 'auto', the type is
            determined by the file extension.  If this fails, the type is
            determined by the value.

    Returns:
        (bool): True on success
    """
    if type == 'auto':
        try:
            type = filenameToType(name)
        except Exception:
            type = types.objectToTypes(value)
            if isinstance(type,(list,tuple)):
                type = type[0]
    if directory==None:
        directory = getDirectory()    
    fn = os.path.join(directory,name)
    _ensure_dir(fn)
    if type == 'xml':
        if hasattr(value,'saveFile'):
            return value.saveFile(fn)
        raise NotImplementedError("TODO: save other xml files from Python API")
    elif type == 'json':
        f = open(fn,'w')
        f.write(loader.toJson(value,type=type))
        f.write('\n')
        f.close()
        return True
    else:
        return loader.save(value,type,fn)