MySqlConnection connection = new MySqlConnection ("SERVER=127.0.0.1;DATABASE=xo_game;UID=root;PASSWORD=;");
try
{
connection.Open();
MySqlCommand cmd = new MySqlCommand("SELECT id, player_one, player_two, CASE avaible WHEN 1 THEN 'Available' ELSE 'Not available' END as 'avaible' FROM games", connection);
MySqlDataAdapter adp = new MySqlDataAdapter(cmd);
DataSet ds = new DataSet();
adp.Fill(ds, "LoadDataBinding");
dataGridGames.DataContext = ds;
}
catch (MySqlException ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
connection.Close();
}
在此代码中,我认为输出为public class PgHS {
public static void main(String[] args) {
byte ascii[] = {65,66,67,68,69,70};
String s1 = new String(ascii,2,3);
System.out.println(s1);
}
}
// output: CDE
,当数组从CD
转到0
时,第二个&第三个位置是n
和67
ASCII等价于68
。
但输出实际上是CD
。这是为什么?
答案 0 :(得分:3)
来自docs:
String(byte[] bytes, int offset, int length)
通过使用平台的默认字符集解码指定的字节子数组来构造一个新的String。
在您的情况下:它从您的ascii
输入创建新字符串,从ascii[2]
开始,字符串长度为3
字节长。
您的打印件应为CDE
。