C#について
using System;
class AddressBook: PhoneBook
{
private string address;
public AddressBook() : base()
{
address="";
}
public void Input()
{
base.Input();
Console.Write("住所?");
string address=Console.ReadLine();
}
public void Writes()
{
base.Write();
Console.WriteLine("住所:{0}",address);
}
}
class kadai62
{
public static void Main()
{
Console.Write("電話帳に入力する人数を入れてください:");
int n = int.Parse(Console.ReadLine());
AddressBook[] pb = new AddressBook[n];
int i;
for (i = 0; i < pb.Length; i++)
{
pb[i] = new AddressBook();
Console.WriteLine("{0}番目を入力してください.", i+1);
pb[i].Input();
}
Console.WriteLine();
while(true)
{
Console.Write("どこから探しますか?[1:氏名,2:自宅電話,3:携帯電話,0:終了] ");
int t = int.Parse(Console.ReadLine());
if (t == 0)
break;
Console.Write("探す文字列は?");
string s = Console.ReadLine();
for (i = 0; i < pb.Length; i++)
{
if (pb[i].Search(t, s))
pb[i].Writes();
}
}
}
}
このプログラムで public void Writes()
{
base.Write();
Console.WriteLine("住所:{0}",address);
}
のaddressが出力されません・・どうすれば 出力されますか?
補足
>コンソールツールがShift JISしか表示できていないのです だからcmd.exeがUNICODEを表示できることは確認しています。 >ファイルにダイレクトして ファイルにリダイレクトしましたが、やはりShift_JISでしか出力されておらず、UNICODE依存文字は表示されていません。 Consoleが内部でWriteConsoleWを使っていないようです。 何か私の考えが間違っているなら、もっと詳しく教えてください。