...
Run Format

Source file src/path/filepath/example_unix_test.go

Documentation: path/filepath

  // Copyright 2013 The Go Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style
  // license that can be found in the LICENSE file.
  
  // +build !windows,!plan9
  
  package filepath_test
  
  import (
  	"fmt"
  	"path/filepath"
  )
  
  func ExampleSplitList() {
  	fmt.Println("On Unix:", filepath.SplitList("/a/b/c:/usr/bin"))
  	// Output:
  	// On Unix: [/a/b/c /usr/bin]
  }
  
  func ExampleRel() {
  	paths := []string{
  		"/a/b/c",
  		"/b/c",
  		"./b/c",
  	}
  	base := "/a"
  
  	fmt.Println("On Unix:")
  	for _, p := range paths {
  		rel, err := filepath.Rel(base, p)
  		fmt.Printf("%q: %q %v\n", p, rel, err)
  	}
  
  	// Output:
  	// On Unix:
  	// "/a/b/c": "b/c" <nil>
  	// "/b/c": "../b/c" <nil>
  	// "./b/c": "" Rel: can't make ./b/c relative to /a
  }
  
  func ExampleSplit() {
  	paths := []string{
  		"/home/arnie/amelia.jpg",
  		"/mnt/photos/",
  		"rabbit.jpg",
  		"/usr/local//go",
  	}
  	fmt.Println("On Unix:")
  	for _, p := range paths {
  		dir, file := filepath.Split(p)
  		fmt.Printf("input: %q\n\tdir: %q\n\tfile: %q\n", p, dir, file)
  	}
  	// Output:
  	// On Unix:
  	// input: "/home/arnie/amelia.jpg"
  	// 	dir: "/home/arnie/"
  	// 	file: "amelia.jpg"
  	// input: "/mnt/photos/"
  	// 	dir: "/mnt/photos/"
  	// 	file: ""
  	// input: "rabbit.jpg"
  	// 	dir: ""
  	// 	file: "rabbit.jpg"
  	// input: "/usr/local//go"
  	// 	dir: "/usr/local//"
  	// 	file: "go"
  }
  
  func ExampleJoin() {
  	fmt.Println("On Unix:")
  	fmt.Println(filepath.Join("a", "b", "c"))
  	fmt.Println(filepath.Join("a", "b/c"))
  	fmt.Println(filepath.Join("a/b", "c"))
  	fmt.Println(filepath.Join("a/b", "/c"))
  	// Output:
  	// On Unix:
  	// a/b/c
  	// a/b/c
  	// a/b/c
  	// a/b/c
  }
  

View as plain text