diff --git a/README.md b/README.md
index 6d82147..c8d72ae 100644
--- a/README.md
+++ b/README.md
@@ -708,7 +708,7 @@ import "github.com/duke-git/lancet/v2/fileutil"
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteCsvFile)]
- **WriteMapsToCsv** : write slice of map to csv file.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteMapsToCsv)]
- [[play](https://go.dev/play/p/dAXm58Q5U1o)]
+ [[play](https://go.dev/play/p/umAIomZFV1c)]
- **WriteBytesToFile** : write bytes to target file.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteBytesToFile)]
[[play](https://go.dev/play/p/s7QlDxMj3P8)]
@@ -1182,8 +1182,10 @@ import "github.com/duke-git/lancet/v2/slice"
[[play](https://go.dev/play/p/v2U2deugKuV)]
- **DeleteAt** : delete the element of slice at index.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#DeleteAt)]
+ [[play](https://go.dev/play/p/800B1dPBYyd)]
- **DeleteRange** : delete the element of slice from start index to end index(exclude).
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#DeleteRange)]
+ [[play](https://go.dev/play/p/945HwiNrnle)]
- **Drop** : drop n elements from the start of a slice.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#Drop)]
[[play](https://go.dev/play/p/jnPO2yQsT8H)]
diff --git a/README_zh-CN.md b/README_zh-CN.md
index 5b704c1..8c17213 100644
--- a/README_zh-CN.md
+++ b/README_zh-CN.md
@@ -709,7 +709,7 @@ import "github.com/duke-git/lancet/v2/fileutil"
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteCsvFile)]
- **WriteMapsToCsv** : 将map切片写入csv文件中。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteMapsToCsv)]
- [[play](https://go.dev/play/p/dAXm58Q5U1o)]
+ [[play](https://go.dev/play/p/umAIomZFV1c)]
- **WriteBytesToFile** : 将 bytes 写入文件。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteBytesToFile)]
[[play](https://go.dev/play/p/s7QlDxMj3P8)]
@@ -1181,8 +1181,10 @@ import "github.com/duke-git/lancet/v2/slice"
[[play](https://go.dev/play/p/v2U2deugKuV)]
- **DeleteAt** : 删除切片中指定索引到的元素。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#DeleteAt)]
+ [[play](https://go.dev/play/p/800B1dPBYyd)]
- **DeleteRange** : 删除切片中指定开始索引到结束索引的元素。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#DeleteRange)]
+ [[play](https://go.dev/play/p/945HwiNrnle)]
- **Drop** : 从切片头部删除 n 个元素。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#Drop)]
[[play](https://go.dev/play/p/jnPO2yQsT8H)]
diff --git a/docs/api/packages/fileutil.md b/docs/api/packages/fileutil.md
index 70e2499..c61f2c7 100644
--- a/docs/api/packages/fileutil.md
+++ b/docs/api/packages/fileutil.md
@@ -759,7 +759,7 @@ func main() {
func WriteMapsToCsv(filepath string, records []map[string]any, appendToExistingFile bool, delimiter rune, headers ...[]string) error
```
-示例:
+示例:[运行](https://go.dev/play/p/umAIomZFV1c)
```go
package main
@@ -782,7 +782,7 @@ func main() {
}
headers := []string{"Name", "Age", "Gender"}
- err := WriteMapsToCsv(csvFilePath, records, false, ';', headers)
+ err := fileutil.WriteMapsToCsv(csvFilePath, records, false, ';', headers)
if err != nil {
log.Fatal(err)
diff --git a/docs/api/packages/slice.md b/docs/api/packages/slice.md
index bef9a8c..dab680f 100644
--- a/docs/api/packages/slice.md
+++ b/docs/api/packages/slice.md
@@ -525,7 +525,7 @@ func main() {
func DeleteAt[T any](slice []T, index int) []T
```
-示例:[运行](https://go.dev/play/p/pJ-d6MUWcvK)
+示例:[运行](https://go.dev/play/p/800B1dPBYyd)
```go
import (
@@ -565,7 +565,7 @@ func main() {
func DeleteRange[T any](slice []T, start, end int) []T
```
-示例:
+示例:[运行](https://go.dev/play/p/945HwiNrnle)
```go
import (
diff --git a/docs/en/api/packages/fileutil.md b/docs/en/api/packages/fileutil.md
index 593062e..5507dc1 100644
--- a/docs/en/api/packages/fileutil.md
+++ b/docs/en/api/packages/fileutil.md
@@ -45,7 +45,6 @@ import (
- [Sha](#Sha)
- [ReadCsvFile](#ReadCsvFile)
- [WriteCsvFile](#WriteCsvFile)
-- [WriteCsvFile](#WriteCsvFile)
- [WriteMapsToCsv](#WriteMapsToCsv)
- [WriteStringToFile](#WriteStringToFile)
- [WriteBytesToFile](#WriteBytesToFile)
@@ -760,7 +759,7 @@ func main() {
func WriteMapsToCsv(filepath string, records []map[string]any, appendToExistingFile bool, delimiter rune, headers ...[]string) error
```
-Example:
+Example:[运行](https://go.dev/play/p/umAIomZFV1c)
```go
package main
diff --git a/docs/en/api/packages/slice.md b/docs/en/api/packages/slice.md
index b580ca9..e113471 100644
--- a/docs/en/api/packages/slice.md
+++ b/docs/en/api/packages/slice.md
@@ -524,7 +524,7 @@ func main() {
func DeleteAt[T any](slice []T, index int)
```
-Example:[Run](https://go.dev/play/p/pJ-d6MUWcvK)
+Example:[Run](https://go.dev/play/p/800B1dPBYyd)
```go
import (
@@ -563,7 +563,7 @@ func main() {
func DeleteRange[T any](slice []T, start, end int) []T
```
-Example:
+Example:[Run](https://go.dev/play/p/945HwiNrnle)
```go
import (
@@ -574,11 +574,11 @@ import (
func main() {
chars := []string{"a", "b", "c", "d", "e"}
- result1 := DeleteRange(chars, 0, 0)
- result2 := DeleteRange(chars, 0, 1)
- result3 := DeleteRange(chars, 0, 3)
- result4 := DeleteRange(chars, 0, 4)
- result5 := DeleteRange(chars, 0, 5)
+ result1 := slice.DeleteRange(chars, 0, 0)
+ result2 := slice.DeleteRange(chars, 0, 1)
+ result3 := slice.DeleteRange(chars, 0, 3)
+ result4 := slice.DeleteRange(chars, 0, 4)
+ result5 := slice.DeleteRange(chars, 0, 5)
fmt.Println(result1)
fmt.Println(result2)
diff --git a/fileutil/file.go b/fileutil/file.go
index e8405ec..32dbb54 100644
--- a/fileutil/file.go
+++ b/fileutil/file.go
@@ -754,7 +754,7 @@ func escapeCSVField(field string, delimiter rune) string {
}
// WriteMapsToCsv write slice of map to csv file.
-// Play: todo
+// Play: https://go.dev/play/p/umAIomZFV1c
// filepath: Path to the CSV file.
// records: Slice of maps to be written. the value of map should be basic type.
// the maps will be sorted by key in alphabeta order, then be written into csv file.
diff --git a/slice/slice.go b/slice/slice.go
index 23bb2f7..0ac436c 100644
--- a/slice/slice.go
+++ b/slice/slice.go
@@ -619,7 +619,7 @@ func IntSlice(slice any) []int {
}
// DeleteAt delete the element of slice at index.
-// Play: https://go.dev/play/p/pJ-d6MUWcvK
+// Play: https://go.dev/play/p/800B1dPBYyd
func DeleteAt[T any](slice []T, index int) []T {
if index >= len(slice) {
index = len(slice) - 1
@@ -633,7 +633,7 @@ func DeleteAt[T any](slice []T, index int) []T {
}
// DeleteRange delete the element of slice from start index to end index(exclude).
-// Play: todo
+// Play: https://go.dev/play/p/945HwiNrnle
func DeleteRange[T any](slice []T, start, end int) []T {
result := make([]T, 0, len(slice)-(end-start))