⏳ کار با تاریخ و زمان در اندروید همیشه چالشبرانگیز بوده؛ مخصوصاً وقتی با مناطق زمانی مختلف و فرمتهای غیراستاندارد سر و کار دارید.
📅 در کاتلین مدرن، کتابخانهٔ «java.time» بهترین گزینه است. دیگر نیازی به «SimpleDateFormat» یا «Calendar» ندارید.
🔍 یک مشکل رایج: تبدیل یک «Timestamp» به تاریخ محلی کاربر با رعایت منطقهٔ زمانی.
🧠 راهحل: استفاده از «Instant» و «ZoneId» برای تبدیل دقیق.
✅ با این دو کلاس، همیشه نتیجهی درست میگیرید.
👇 یک مثال عملی:
💡 این کد تایماستمپ را به تاریخ و زمان محلی بر اساس منطقه زمانی تهران تبدیل میکند.
⚙️ نکتهٔ پیشرفته: برای ذخیره در «Room Database»، بهتر است تاریخ را به «Long» (timestamp) تبدیل کنید و هنگام نمایش با «java.time» به فرمت دلخواه تغییر دهید.
🚀 با این روش، همهٔ پیچیدگیهای «Daylight Saving Time» و مناطق زمانی خودکار مدیریت میشود.
📌 حتماً از این رویکرد در پروژههای جدید استفاده کنید.
#Codeit #Android #Kotlin #Jetpack #DateTime #javaTime #KotlinTips #AndroidDev
🌐 Codeit → https://code-it.ir
━━━━━━━━━━━━━━━
@CodeitMobile
📅 در کاتلین مدرن، کتابخانهٔ «java.time» بهترین گزینه است. دیگر نیازی به «SimpleDateFormat» یا «Calendar» ندارید.
🔍 یک مشکل رایج: تبدیل یک «Timestamp» به تاریخ محلی کاربر با رعایت منطقهٔ زمانی.
🧠 راهحل: استفاده از «Instant» و «ZoneId» برای تبدیل دقیق.
✅ با این دو کلاس، همیشه نتیجهی درست میگیرید.
👇 یک مثال عملی:
import java.time.Instant
import java.time.ZoneId
import java.time.ZonedDateTime
import java.time.format.DateTimeFormatter
val timestamp: Long = 1700000000000L // مثال
val instant = Instant.ofEpochMilli(timestamp)
val zone = ZoneId.of("Asia/Tehran")
val zonedDateTime = ZonedDateTime.ofInstant(instant, zone)
val formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm")
val persianDate = zonedDateTime.format(formatter)
println(persianDate) // خروجی: ۱۴۰۲/۰۸/۲۰ ۱۲:۳۰
💡 این کد تایماستمپ را به تاریخ و زمان محلی بر اساس منطقه زمانی تهران تبدیل میکند.
⚙️ نکتهٔ پیشرفته: برای ذخیره در «Room Database»، بهتر است تاریخ را به «Long» (timestamp) تبدیل کنید و هنگام نمایش با «java.time» به فرمت دلخواه تغییر دهید.
🚀 با این روش، همهٔ پیچیدگیهای «Daylight Saving Time» و مناطق زمانی خودکار مدیریت میشود.
📌 حتماً از این رویکرد در پروژههای جدید استفاده کنید.
#Codeit #Android #Kotlin #Jetpack #DateTime #javaTime #KotlinTips #AndroidDev
🌐 Codeit → https://code-it.ir
━━━━━━━━━━━━━━━
@CodeitMobile
🔥2❤1