I haven't tried any of these methods, but it does provide the
posix::stream_descriptor and windows::{stream,random_access}_handle
classes which should be able to operate on native files.  (You'll have
to use a native OS-level function to open the handle/descriptor for the
file and pass ownership to the ASIO object; they lack means to do the
opening itself.)

Thank u.
That gives me a direction. The only sad thing is very little document/examples described about this API of boost.asio .