Chỉ cần dành thời gian viết điều này dựa trên câu trả lời ở đây, vì vậy tôi nghĩ rằng tôi sẽ chia sẻ.
Điều này dựa trên câu trả lời của Brannon, nhưng cho phép bạn nhận nhiều hơn một chữ số tại một thời điểm.Trong trường hợp của tôi, tôi sử dụng nó để trích xuất các phần từ ngày và thời gian được lưu trong một int nơi các chữ số có định dạng yyyymmddhhnnssm_s.
public static int GetDigits(this int number, int highestDigit, int numDigits)
{
return (number/(int)Math.Pow(10, highestDigit - numDigits)) % (int)Math.Pow(10, numDigits);
}
tôi đã làm cho nó một phần mở rộng, bạn có thể không muốn, nhưng ở đây là sử dụng mẫu:
int i = 20010607;
string year = i.GetDigits(8,4).ToString();
string month = i.GetDigits(4,2).ToString();
string day = i.GetDigits(2,2).ToString();
kết quả:
năm = 2001
tháng = 6
ngày = 7
Bạn cần làm rõ - bạn đang tìm chữ số thập phân? Nếu vậy, các hoạt động bit-khôn ngoan không thích hợp. Bạn đang tìm kiếm số nhị phân, bát phân hoặc chữ số thập lục phân? Nếu có, thì các hoạt động bit-khôn ngoan là thích hợp. Ngoài ra, chúng là 'số nguyên', không phải 'intergers' (tiêu đề). –