일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- AI
- tflite_flutter
- providernotfoundexception
- app stroe connect guideline
- flutter_dotenv
- 에러
- app completeness
- permissiondeniedexception
- dart sdk version upgrade
- exception
- information needed
- youtube_player_flutter
- app store connect guideline
- pub.dev
- GetX
- Flutter
- buildcontext
- infinity or nan toint
- flutter_secure_storage
- appstroe connect guideline
- flutter doctor -v
- 채팅 메시지 정렬
- guideline 4.3(a)
- undefined name
- appstore connect guideline
- .dio
- withopacity
- exception caught by image resource service
- guideline 1.5
- 플러터
Archives
- Today
- Total
min_chan님의 블로그
[pub.dev] - intl 본문
intl이란?
intl은 Flutter에서 다국어 지원과 날짜/숫자 포맷팅을 쉽게 할 수 있도록 도와주는 패키지다.
해당 패키지는 앱을 국제화 및 현지화, 날짜와 숫자를 다양한 로케일 형식으로 변환할 수 있는 기능을 제공한다.
- 메시지 번역 (문자열 다국어 지원)
- 복수형 및 성별 구분 번역 (Plurals, Genders)
- 날짜 및 숫자 형식 변환 (Formatting)
- 양방향 텍스트 처리 (Bidirectional Text)
intl사용법
1. 패키지 설치
- 터미널에서 pub add 명령어를 실행해 해당 패키지를 설치한다.
2. 로케일(Locale) 설정 및 사용
- 2.1 기본 로케일 설정 (앱 전체에서 사용할 로케일 설정)
import 'package:intl/intl.dart';
void main() {
Intl.defaultLocale = 'ko_KR'; // 한국어 기본 로케일 설정
}
- 2.2 특정 작업에서 로케일 변경
Intl.withLocale('fr_FR', () {
print(DateFormat.yMMMMd().format(DateTime.now())); // 프랑스어 날짜 형식 적용
});
3. 날짜 포맷팅
- 국가별 날짜 형식에 맞춰 포맷팅
import 'package:intl/intl.dart';
void main() {
DateTime now = DateTime.now();
String formattedDate = DateFormat.yMMMMd('en_US').format(now);
print(formattedDate); // 예: January 15, 2025
}
4. 숫자 포맷팅
- 숫자를 국가별 형식에 맞춰 포맷팅
var numberFormat = NumberFormat('#,##0.00', 'en_US');
print(numberFormat.format(1234567.89)); // 1,234,567.89
- 통화(currency) 형식으로 변환하여 포맷팅
var currencyFormat = NumberFormat.currency(locale: 'ko_KR', symbol: '₩');
print(currencyFormat.format(1234567.89)); // ₩1,234,567.89
5. 다국어 지원 (번역 처리)
- Intl.message를 사용하여 번역 가능한 메시지를 정의할 수 있다.
import 'package:intl/intl.dart';
String greetingMessage(String name) => Intl.message(
'Hello $name!',
name: 'greetingMessage',
args: [name],
desc: '사용자가 앱을 처음 실행할 때 인사말 메시지'
);
void main() {
print(greetingMessage('John')); // Hello John!
}
'pub.dev' 카테고리의 다른 글
[pub.dev] - dio (0) | 2025.03.14 |
---|---|
[pub.dev] - http (0) | 2025.03.13 |
[pub.dev] - flutter_secure_storage (0) | 2025.03.05 |
[pub.dev] - flutter_dotenv (0) | 2025.02.27 |
[pub.dev] - provider (0) | 2025.02.24 |