首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Ruby 註釋與中文編碼完整指南

     編輯:Java 相關知識

Ruby 程式碼註釋語法

Ruby 使用 # 符號表示單行註釋,解析器會忽略該符號後的所有內容:

# 我是註釋,請忽略我。
name = "Madisetti" # 這也是註釋

多行註釋可使用 =begin 和 =end 成對包裹:

=begin
這是註釋。
這也是註釋。
這也是註釋。
這還是註釋。
=end

Ruby 中文編碼問題與解決方案

Ruby 預設使用 ASCII 編碼讀取原始碼,直接輸出中文會報錯:

#!/usr/bin/ruby -w
puts "你好,世界!"
# 執行錯誤: invalid multibyte char (US-ASCII)

解決方法

在檔案第一行加入編碼宣告:

#!/usr/bin/ruby -w
# -*- coding: UTF-8 -*-
puts "你好,世界!"
# 正常輸出: 你好,世界!

或使用簡寫形式 #coding=utf-8。兩個要點:

  1. 必須在首行添加編碼宣告,告知解析器使用 UTF-8 解析原始碼
  2. 編輯器儲存檔案時編碼必須設為 UTF-8

補充:Java 十六進制與字串轉換工具類

文末附帶的 Java 工具方法實現位元組陣列與十六進制字串互轉、BCD 編碼轉換:

// 位元組陣列轉十六進制字串
public static final String bytesToHexString(byte[] bArray) {
    StringBuffer sb = new StringBuffer(bArray.length);
    for (int i = 0; i < bArray.length; i++) {
        String sTemp = Integer.toHexString(0xFF & bArray[i]);
        if (sTemp.length() < 2) sb.append('0');
        sb.append(sTemp.toUpperCase());
    }
    return sb.toString();
}

// BCD 碼轉十進制字串
public static String bcd2Str(byte[] bytes) { /* 實現略 */ }

// 十進制字串轉 BCD 碼
public static byte[] str2Bcd(String asc) { /* 實現略 */ }

測試主程式展示中文字串「你好」的十六進制表示及數值範圍測試。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved