Beispiel #1
0
        /// <summary>指定された文字列が、SJIS文字のみで構成されているかどうか確認する。</summary>
        /// <param name="input">入力文字列</param>
        /// <returns>
        /// true:SJIS文字のみで構成されている。
        /// false:SJIS文字のみで構成されていない。
        /// </returns>
        /// <remarks>
        /// SJISエンコーディングの可逆チェックを使用して判定する。
        /// 空文字列が指定された場合は、trueが返ります。
        /// </remarks>
        public static bool IsShift_Jis(string input)
        {
            // 空文字列が指定された場合は、true
            if (input == "")
            {
                return(true);
            }

            // 可逆性チェック
            byte[] sjisData = CustomEncode.StringToByte(input, CustomEncode.shift_jis);
            if (input == CustomEncode.ByteToString(sjisData, CustomEncode.shift_jis))
            {
                // 可逆性、有り = SJISである。
                return(true);
            }
            else
            {
                // 可逆性、無し = SJISでない。
                return(false);
            }
        }
Beispiel #2
0
        /// <summary>
        /// 指定された文字列が、
        /// ・当該コードページのみで構成されており
        /// ・可逆エンコード可能かどうか?
        /// を確認する。
        /// </summary>
        /// <param name="input">
        /// 入力文字列
        /// </param>
        /// <param name="codePageNum">
        /// エンコーディングに使用するコードページ
        /// </param>
        /// <returns>
        /// true:当該コードページの可逆エンコードな文字で構成されている。
        /// false:当該コードページの可逆エンコードな文字で構成されていない。
        /// </returns>
        /// <remarks>
        /// 指定コードページのエンコーディング
        /// を使用した可逆チェックを使用して判定する。
        /// 空文字列が指定された場合は、trueが返ります。
        /// </remarks>
        public static bool IsInCodePage(string input, int codePageNum)
        {
            // 空文字列が指定された場合は、true
            if (input == "")
            {
                return(true);
            }

            // 可逆性チェック
            byte[] byteData = CustomEncode.StringToByte(input, codePageNum);
            if (input == CustomEncode.ByteToString(byteData, codePageNum))
            {
                // 可逆性、有り = 指定コードページの文字である。
                return(true);
            }
            else
            {
                // 可逆性、無し = 指定コードページの文字でない。
                return(false);
            }
        }