protected override void SetItem(string path, object value)
        {
            ZipFileContentDynamicParameters parameters = DynamicParameters as ZipFileContentDynamicParameters;

            Stream stream = ZipDrive.Archive.GetFile(GetPathCaseInsensitivePath(ParsePath(path, false))).GetStream(FileMode.Open, FileAccess.ReadWrite);

            if (parameters.UsingByteEncoding)
            {
                if (value.GetType() == typeof(byte[]))
                {
                    foreach (byte bajt in (byte[])value)
                    {
                        stream.WriteByte(bajt);
                    }
                }
                else
                {
                    WriteError(new ErrorRecord(new ArgumentException("content"), "ByteDataWasExpected", ErrorCategory.InvalidArgument, path));
                }
            }
            else
            {
                StreamWriter writer = new StreamWriter(stream, parameters.EncodingType);
                writer.Write(value);
                writer.Flush();
                writer.Close();
            }

            stream.Flush();
            stream.Close();
        }
        public IContentWriter GetContentWriter(string path)
        {
            ZipFileContentDynamicParameters parameters = DynamicParameters as ZipFileContentDynamicParameters;

            return(new ZipFileContentReaderWriter(this, path, parameters.FileMode, parameters.FileAccess, parameters.EncodingType, parameters.UsingByteEncoding));
        }