编码转换(实例)
前四期
字符编码(四)-CSDN博客
实现二进制、八进制、十进制、十六进制互换转换:
Java编码转换
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("欢迎使用进制转换工具!");
while (true) {
System.out.println("请选择要转换的进制类型:");
System.out.println("1. 二进制转其他");
System.out.println("2. 十进制转其他");
System.out.println("3. 八进制转其他");
System.out.println("4. 十六进制转其他");
System.out.println("5. 退出");
int choice = scanner.nextInt();
if (choice == 5) {
break;
}
System.out.println("请输入要转换的数值:");
String input = scanner.next();
switch (choice) {
case 1:
binaryToOthers(input);
break;
case 2:
decimalToOthers(Integer.parseInt(input));
break;
case 3:
octalToOthers(input);
break;
case 4:
hexToOthers(input);
break;
default:
System.out.println("无效的选择,请重新选择!");
}
}
scanner.close();
System.out.println("感谢使用本工具!");
}
private static void binaryToOthers(String binary) {
int decimal = Integer.parseInt(binary, 2);
System.out.println("二进制 " + binary + " 转换为十进制: " + decimal);
System.out.println("二进制 " + binary + " 转换为八进制: " + Integer.toOctalString(decimal));
System.out.println("二进制 " + binary + " 转换为十六进制: " + Integer.toHexString(decimal).toUpperCase());
}
private static void decimalToOthers(int decimal) {
System.out.println("十进制 " + decimal + " 转换为二进制: " + Integer.toBinaryString(decimal));
System.out.println("十进制 " + decimal + " 转换为八进制: " + Integer.toOctalString(decimal));
System.out.println("十进制 " + decimal + " 转换为十六进制: " + Integer.toHexString(decimal).toUpperCase());
}
private static void octalToOthers(String octal) {
int decimal = Integer.parseInt(octal, 8);
System.out.println("八进制 " + octal + " 转换为二进制: " + Integer.toBinaryString(decimal));
System.out.println("八进制 " + octal + " 转换为十进制: " + decimal);
System.out.println("八进制 " + octal + " 转换为十六进制: " + Integer.toHexString(decimal).toUpperCase());
}
private static void hexToOthers(String hex) {
int decimal = Integer.parseUnsignedInt(hex, 16);
System.out.println("十六进制 " + hex + " 转换为二进制: " + Integer.toBinaryString(decimal));
System.out.println("十六进制 " + hex + " 转换为八进制: " + Integer.toOctalString(decimal));
System.out.println("十六进制 " + hex + " 转换为十进制: " + decimal);
}
}
C#编号转换
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 编码转换
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("欢迎使用进制转换工具!");
while (true)
{
Console.WriteLine("请选择要转换的进制类型:");
Console.WriteLine("1. 二进制转其他");
Console.WriteLine("2. 十进制转其他");
Console.WriteLine("3. 八进制转其他");
Console.WriteLine("4. 十六进制转其他");
Console.WriteLine("5. 退出");
int choice = int.Parse(Console.ReadLine());
if (choice == 5)
{
break;
}
Console.WriteLine("请输入要转换的数值:");
string input = Console.ReadLine();
switch (choice)
{
case 1:
BinaryToOthers(input);
break;
case 2:
DecimalToOthers(int.Parse(input));
break;
case 3:
OctalToOthers(input);
break;
case 4:
HexToOthers(input);
break;
default:
Console.WriteLine("无效的选择,请重新选择!");
break;
}
}
Console.WriteLine("感谢使用本工具!");
}
private static void BinaryToOthers(string binary)
{
int decimalValue = Convert.ToInt32(binary, 2);
Console.WriteLine($"二进制 {binary} 转换为十进制: {decimalValue}");
Console.WriteLine($"二进制 {binary} 转换为八进制: {Convert.ToString(decimalValue, 8)}");
Console.WriteLine($"二进制 {binary} 转换为十六进制: {Convert.ToString(decimalValue, 16).ToUpper()}");
}
private static void DecimalToOthers(int decimalValue)
{
Console.WriteLine($"十进制 {decimalValue} 转换为二进制: {Convert.ToString(decimalValue, 2)}");
Console.WriteLine($"十进制 {decimalValue} 转换为八进制: {Convert.ToString(decimalValue, 8)}");
Console.WriteLine($"十进制 {decimalValue} 转换为十六进制: {Convert.ToString(decimalValue, 16).ToUpper()}");
}
private static void OctalToOthers(string octal)
{
int decimalValue = Convert.ToInt32(octal, 8);
Console.WriteLine($"八进制 {octal} 转换为二进制: {Convert.ToString(decimalValue, 2)}");
Console.WriteLine($"八进制 {octal} 转换为十进制: {decimalValue}");
Console.WriteLine($"八进制 {octal} 转换为十六进制: {Convert.ToString(decimalValue, 16).ToUpper()}");
}
private static void HexToOthers(string hex)
{
int decimalValue = Convert.ToInt32(hex, 16);
Console.WriteLine($"十六进制 {hex} 转换为二进制: {Convert.ToString(decimalValue, 2)}");
Console.WriteLine($"十六进制 {hex} 转换为八进制: {Convert.ToString(decimalValue, 8)}");
Console.WriteLine($"十六进制 {hex} 转换为十进制: {decimalValue}");
}
}
}