[fs.path.io]

# 31 Input/output library [[input.output]](./#input.output)

## 31.12 File systems [[filesystems]](filesystems#fs.path.io)

### 31.12.6 Class path [[fs.class.path]](fs.class.path#fs.path.io)

#### 31.12.6.7 Inserter and extractor [fs.path.io]

[ð](#lib:operator%3c%3c,path)

`template<class charT, class traits>
  friend basic_ostream<charT, traits>&
    operator<<(basic_ostream<charT, traits>& os, const path& p);
`

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L15351)

*Effects*: Equivalent to os << quoted(p.string<charT, traits>())[.](#1.sentence-1)

[*Note [1](#note-1)*:

The quoted function is described in [[quoted.manip]](quoted.manip "31.7.9 Quoted manipulators")[.](#1.sentence-2)

â *end note*]

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L15358)

*Returns*: os[.](#2.sentence-1)

[ð](#lib:operator%3e%3e,path)

`template<class charT, class traits>
  friend basic_istream<charT, traits>&
    operator>>(basic_istream<charT, traits>& is, path& p);
`

[3](#3)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L15371)

*Effects*: Equivalent to:basic_string<charT, traits> tmp;
is >> quoted(tmp);
p = tmp;

[4](#4)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iostreams.tex#L15380)

*Returns*: is[.](#4.sentence-1)
