私は Android TimeZone 機能を使用しており、私のアプリはインドのデバイスからアジア/コルカタを期待するサーバーと通信しています。ただし、 を取得するTimeZone.getDefault().getDisplayName()と、コルカタではなく Asia/Calcutta が取得されます。で値を出力するTimeZone.getAvailableIDs()と、カルカッタとコルカタの両方が表示されることがわかります。何か案は?
			
			3165 次
		
1 に答える
            5        
        
		
どちらも有効である必要があります。ゾーンは以前は と呼ばれAsia/Calcutta、名前が に変更されましAsia/Kolkataたが、古い名前から新しい名前を指すエイリアスが tzdb に残っています。  ここ を参照してください。
サーバーが新しい名前を許可しない場合は、ここから、または使用している実装で tz ファイルを更新する必要があります。
それができない場合は、いつでもこのケースをキャッチして、文字列を自分で置き換えることができます。それらは同等のゾーンです。
于 2013-05-17T02:45:02.853   に答える