⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 deria5string.java

📁 java 文件下载器。可自定义
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   DERIA5String.java

package org.bouncycastle.asn1;

import java.io.IOException;

// Referenced classes of package org.bouncycastle.asn1:
//			ASN1Object, ASN1OctetString, ASN1TaggedObject, DEROutputStream, 
//			DERString, DERObject

public class DERIA5String extends ASN1Object
	implements DERString
{

	String string;

	public static DERIA5String getInstance(Object obj)
	{
		if (obj == null || (obj instanceof DERIA5String))
			return (DERIA5String)obj;
		if (obj instanceof ASN1OctetString)
			return new DERIA5String(((ASN1OctetString)obj).getOctets());
		if (obj instanceof ASN1TaggedObject)
			return getInstance(((ASN1TaggedObject)obj).getObject());
		else
			throw new IllegalArgumentException((new StringBuilder()).append("illegal object in getInstance: ").append(obj.getClass().getName()).toString());
	}

	public static DERIA5String getInstance(ASN1TaggedObject obj, boolean explicit)
	{
		return getInstance(obj.getObject());
	}

	public DERIA5String(byte string[])
	{
		char cs[] = new char[string.length];
		for (int i = 0; i != cs.length; i++)
			cs[i] = (char)(string[i] & 0xff);

		this.string = new String(cs);
	}

	public DERIA5String(String string)
	{
		this(string, false);
	}

	public DERIA5String(String string, boolean validate)
	{
		if (validate && !isIA5String(string))
		{
			throw new IllegalArgumentException("string contains illegal characters");
		} else
		{
			this.string = string;
			return;
		}
	}

	public String getString()
	{
		return string;
	}

	public String toString()
	{
		return string;
	}

	public byte[] getOctets()
	{
		char cs[] = string.toCharArray();
		byte bs[] = new byte[cs.length];
		for (int i = 0; i != cs.length; i++)
			bs[i] = (byte)cs[i];

		return bs;
	}

	void encode(DEROutputStream out)
		throws IOException
	{
		out.writeEncoded(22, getOctets());
	}

	public int hashCode()
	{
		return getString().hashCode();
	}

	boolean asn1Equals(DERObject o)
	{
		if (!(o instanceof DERIA5String))
		{
			return false;
		} else
		{
			DERIA5String s = (DERIA5String)o;
			return getString().equals(s.getString());
		}
	}

	public static boolean isIA5String(String str)
	{
		for (int i = str.length() - 1; i >= 0; i--)
		{
			char ch = str.charAt(i);
			if (ch > '\177')
				return false;
		}

		return true;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -