Używam Windows 7, Visual Studio 2013, C# i .NET 4.5.Zamiast symbolu waluty otrzymuję znak zapytania do wiersza polecenia
Mój problem jest wyjście linii poniżej:
Console.WriteLine("Car`s value: {0:C} ", myNewCar.determineMarketValue());
myNewCar.determineMarketValue()
zwraca podwójne.
Jak mogę rozwiązać ten problem?
moje wyjście to:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Lesson15SimpleClasses
{
class Program
{
static void Main(string[] args)
{
Car myNewCar = new Car();
myNewCar.Make = "Oldsmobile";
myNewCar.Model = "Cutlas Supreme";
myNewCar.Year = 1986;
myNewCar.Color = "Silver";
Console.OutputEncoding = System.Text.Encoding.Unicode;
Console.WriteLine("{0} - {1} - {2}",
myNewCar.Make,
myNewCar.Model,
myNewCar.Color);
Console.WriteLine("Car`s value: {0:C} ", myNewCar.determineMarketValue());
Console.ReadLine();
}
}
class Car
{
public string Make { get; set; }
public string Model { get; set; }
public int Year { get; set; }
public string Color { get; set; }
public double determineMarketValue()
{
double carValue = 100.0;
if (this.Year > 1990)
carValue = 10000.0;
else
carValue = 2000.0;
return (carValue);
}
}
}
dodałam mój kod ..so prosty, ale doent pracy :(
Aktualizacja: Kod zaktualizowane do korzystania Console.OutputEncoding = System.Text.Encoding.Unicode;
a także moje waluty i konsoli konfiguracyjnej są pokazane poniżej:
Problem, jak widać, mimo że zaktualizowałem mój kod, aby używać kodu Unicode ged moje ustawienia cmd do używania czcionki Lucida Console, gdy wykonuję program z VS, czcionka pozostaje ta sama opcja czcionek rastrowych.
LAST EDIT: Oto jak zmienić czcionkę konsoli używanej przez konsoli Visual Studio szybko i simple.Now walucie pojawia się prawidłowo w moim programie: Control console font & layout used by C# .NET console application
To będzie problem z kodowaniem ... Upewnij się, że nie korzystasz z ASCII i kasy Unicode/UTF itp. – Belogix
Czy możesz pokazać, co otrzymujesz, a także wartość 'myNewCar.determineMarketValue()'? –
Tak 1 minuta pls – strax