/// <summary> /// 打开字节流 /// </summary> /// <param name="buf"></param> /// <param name="mode"></param> /// <returns></returns> public bool OpenMem(byte[] buf, OPEN_MODE mode) { if (m_Opened) { Close(); } if (null == buf) { return(false); } m_Stream = new MemoryStream(buf, mode == OPEN_MODE.OPEN_READ ? false : true); if (m_Stream == null) { return(false); } m_Opened = true; if (mode == OPEN_MODE.OPEN_READ) { m_Reader = new BinaryReader(m_Stream, m_CurEncoding); } else { m_Writer = new BinaryWriter(m_Stream, m_CurEncoding); } return(true); }
public override bool Open(string path, OPEN_MODE mode) { if (!base.Open(path, mode)) { return(false); } return(true); }
public override bool OpenMem(byte[] buf, OPEN_MODE mode) { if (!base.OpenMem(buf, mode)) { return(false); } if (mode == OPEN_MODE.OPEN_READ) { Reader = new StreamReader(mStream, CurEncoding); } else { Writer = new StreamWriter(mStream, CurEncoding); } return(true); }
public override bool Open(string path, OPEN_MODE mode) { if (!base.Open(path, mode)) { return(false); } if (mode == OPEN_MODE.OPEN_READ) { Reader = new BinaryReader(mStream, CurEncoding); } else { Writer = new BinaryWriter(mStream, CurEncoding); } return(true); }
public virtual bool OpenMem(byte[] buf, OPEN_MODE mode) { if (mOpened) { Close(); } if (null == buf) { return(false); } mStream = new MemoryStream(buf, mode == OPEN_MODE.OPEN_READ ? false : true); if (mStream == null) { return(false); } mOpened = true; return(true); }
/// <summary> /// 打开 /// </summary> /// <param name="path"></param> /// <param name="mode"></param> /// <returns></returns> public bool Open(string path, OPEN_MODE mode) { if (m_Opened) { Close(); } FileMode filemode = FileMode.Open; if (mode == OPEN_MODE.OPEN_WRITE) { filemode = FileMode.OpenOrCreate; } else if (mode == OPEN_MODE.OPEN_WRITE_CREATE) { filemode = FileMode.Create; } FileAccess access = (mode == OPEN_MODE.OPEN_READ) ? FileAccess.Read : FileAccess.ReadWrite; if (access == FileAccess.Read) { if (!File.Exists(path)) { return(false); } } else { if (File.Exists(path)) { File.SetAttributes(path, FileAttributes.Normal); } } try { m_Stream = new FileStream(path, filemode, access, FileShare.ReadWrite); if (m_Stream == null) { return(false); } m_Opened = true; } catch (Exception ex) { Debug.LogError("异常:" + ex.ToString()); } if (mode == OPEN_MODE.OPEN_READ) { m_Reader = new BinaryReader(m_Stream, m_CurEncoding); } else { m_Writer = new BinaryWriter(m_Stream, m_CurEncoding); } return(true); }
/// <summary> /// 写入文件 /// </summary> /// <param name="path"></param> /// <param name="mode"></param> /// <returns></returns> public bool OpenWrite(string path, OPEN_MODE mode = OPEN_MODE.OPEN_WRITE) { return(Open(path, mode)); }
public virtual bool Open(string path, OPEN_MODE mode) { if (mOpened) { Close(); } FileMode filemode = FileMode.Open; if (mode == OPEN_MODE.OPEN_WRITE) { filemode = FileMode.OpenOrCreate; } else if (mode == OPEN_MODE.OPEN_WRITE_CREATE) { filemode = FileMode.Create; } else if (mode == OPEN_MODE.OPEN_APPEND) { filemode = FileMode.Append; } FileAccess access = (mode == OPEN_MODE.OPEN_READ) ? FileAccess.Read : FileAccess.ReadWrite; if (filemode == FileMode.Append) { access = FileAccess.Write; } if (access == FileAccess.Read) { // read, check exist if (!File.Exists(path)) { return(false); } } else { // write or create if (File.Exists(path)) { File.SetAttributes(path, FileAttributes.Normal); } } try { mStream = new FileStream(path, filemode, access, FileShare.ReadWrite); if (mStream == null) { return(false); } FilePath = path; mOpened = true; } catch (Exception ex) { } return(true); }