Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

vnprovince provides a list of Vietnam administrative divisions

License

Notifications You must be signed in to change notification settings

TcMits/vnprovince

Repository files navigation

vnprovince

vnprovince provides a list of Vietnam administrative divisions

Features

  • get all divisions
  • convert old divisions to 01/07/2025 divisions

Install

go get github.com/TcMits/vnprovince/v2@main

Updates

  • use github.com/TcMits/vnprovince/v2@main for 01/07/2025 divisions

Examples

Loop

package main
import (
 "github.com/TcMits/vnprovince"
)
func main() {
	vnprovince.EachDivision(func(d Division) bool {
		return true
	})
}

Convert v1 to v2

package main
import (
 "log"
 v1 "github.com/TcMits/vnprovince"
 v2 "github.com/TcMits/vnprovince/v2"
)
func main() {
	v1Idx := 0
	v1.EachDivision(func(d v1.Division) bool {
		if d.ProvinceName == "Thành phố Hồ Chí Minh" && d.DistrictName == "Quận 3" && d.WardName == "Phường 14" {
			return false
		}
		v1Idx++
		return true
	})
	v2Idx, ok := v2.V1IndexToV2Index(v1Idx)
	if !ok {
		log.Fatalf("Expected to find index for v1 index %d, but got none", v1Idx)
	}
	d, ok := v2.AtIndex(v2Idx)
	if !ok {
		log.Fatalf("Expected to find division at index %d, but got none", v2Idx)
	}
	if d.ProvinceName != "Thành phố Hồ Chí Minh" {
		log.Fatalf("Expected province name 'Thành phố Hồ Chí Minh', got '%s'", d.ProvinceName)
	}
	if d.WardName != "Phường Nhiêu Lộc" {
		log.Fatalf("Expected ward name 'Phường Nhiêu Lộc', got '%s'", d.WardName)
	}
}

Data

About

vnprovince provides a list of Vietnam administrative divisions

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

Languages

AltStyle によって変換されたページ (->オリジナル) /