小弟自己做类库的时候遇到难题不会了,希望对此知晓的朋友能点播一下小弟。再此先谢过了事情是这样的。
这两天做了一个BASE64加密的类库,部分代码

public string EncodeBase64(string code_type,string code)

string encode = ""; 
byte[] bytes = System.Text.Encoding.GetEncoding(code_type).GetBytes(code); 
try 

encode = Convert.ToBase64String(bytes); 

catch 

encode = code; 

return encode; 
}这里面包括一个code_type.就是字符编码机制。 B64lib.Base64 bb =new B64lib.Base64();
txt2.Text=bb.EncodeBase64("utf-8",txt1.Text)我想编一个功能就是在实例的时候可以直接选择
例如 B64lib.Base64 bb =new B64lib.Base64();
txt2.Text=bb.EncodeBase64(bb.CodeType.utf8,txt1.Text)
就是把utf-8等预写到类库里面,因为还有utf-16,ascii,unicode等编码
public string codetype;
/// <summary>
/// 编码机制,包含UTF-8,UTF-16,ASCII,UNICODE
/// </summary>
/// <returns></returns>
public string Code_Type
{
///这应该怎么写 }

解决方案 »

  1.   

    楼主可以用工厂模式啊,先根据你的 Code_Type构造出相应的对象,然后再加密就可以了
    要不然就在类里面判断下输入的编码机制,做分支就哦了
      

  2.   

    --枚举类
    class EnumerationClass
        {
            public enum EnumType
            {
                ASCII, unicode
            }
        }
     B64lib bb = new B64lib();
    bb.EncodeBase64(EnumerationClass.EnumType.ASCII, textBox1.Text);
    根据6楼思路放在枚举类中。utf-8报错
      

  3.   

     bb.EncodeBase64(Convert.ToString(EnumerationClass.EnumType.ASCII), textBox1.Text);
    忘了转化类型了。