Python io.BufferedRandom() Examples
The following are 11
code examples of io.BufferedRandom().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
io
, or try the search function
.
Example #1
Source File: text.py From tabulator-py with MIT License | 6 votes |
def load(self, source, mode='t', encoding=None): # Prepare source scheme = 'text://' if source.startswith(scheme): source = source.replace(scheme, '', 1) # Prepare bytes bytes = io.BufferedRandom(io.BytesIO()) bytes.write(source.encode(encoding or config.DEFAULT_ENCODING)) bytes.seek(0) if self.__stats: bytes = helpers.BytesStatsWrapper(bytes, self.__stats) # Return bytes if mode == 'b': return bytes # Prepare chars chars = io.TextIOWrapper(bytes, encoding) return chars
Example #2
Source File: common.py From synapse with Apache License 2.0 | 6 votes |
def genfile(*paths): ''' Create or open ( for read/write ) a file path join. Args: *paths: A list of paths to join together to make the file. Notes: If the file already exists, the fd returned is opened in ``r+b`` mode. Otherwise, the fd is opened in ``w+b`` mode. The file position is set to the start of the file. The user is responsible for truncating (``fd.truncate()``) if the existing file contents are not desired, or seeking to the end (``fd.seek(0, 2)``) to append. Returns: io.BufferedRandom: A file-object which can be read/written too. ''' path = genpath(*paths) gendir(os.path.dirname(path)) if not os.path.isfile(path): return io.open(path, 'w+b') return io.open(path, 'r+b')
Example #3
Source File: sudo_utils.py From temci with GNU General Public License v3.0 | 6 votes |
def chown(path: Union[str, TextIOWrapper, BufferedRandom, BufferedRWPair, BufferedWriter, IOBase]): if not bench_as_different_user(): return if isinstance(path, IOBase) and path.isatty(): return if not isinstance(path, str): return chown(path.name) ids = () try: ids = get_bench_uid_and_gid() except: global _logged_chown_error if not _logged_chown_error: logging.warn("Could not get user id for user {} therefore no chowning possible".format(get_bench_user())) _logged_chown_error = True return try: os.chown(path, *ids) except FileNotFoundError: pass
Example #4
Source File: pickletester.py From ironpython2 with Apache License 2.0 | 5 votes |
def test_unpickling_buffering_readline(self): # Issue #12687: the unpickler's buffering logic could fail with # text mode opcodes. import io data = list(xrange(10)) for proto in protocols: for buf_size in xrange(1, 11): f = io.BufferedRandom(io.BytesIO(), buffer_size=buf_size) pickler = self.pickler_class(f, protocol=proto) pickler.dump(data) f.seek(0) unpickler = self.unpickler_class(f) self.assertEqual(unpickler.load(), data)
Example #5
Source File: pickletester.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_unpickling_buffering_readline(self): # Issue #12687: the unpickler's buffering logic could fail with # text mode opcodes. data = list(range(10)) for proto in protocols: for buf_size in range(1, 11): f = io.BufferedRandom(io.BytesIO(), buffer_size=buf_size) pickler = self.pickler_class(f, protocol=proto) pickler.dump(data) f.seek(0) unpickler = self.unpickler_class(f) self.assertEqual(unpickler.load(), data) # Tests for dispatch_table attribute
Example #6
Source File: pickletester.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_unpickling_buffering_readline(self): # Issue #12687: the unpickler's buffering logic could fail with # text mode opcodes. data = list(range(10)) for proto in protocols: for buf_size in range(1, 11): f = io.BufferedRandom(io.BytesIO(), buffer_size=buf_size) pickler = self.pickler_class(f, protocol=proto) pickler.dump(data) f.seek(0) unpickler = self.unpickler_class(f) self.assertEqual(unpickler.load(), data) # Tests for dispatch_table attribute
Example #7
Source File: pickletester.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_unpickling_buffering_readline(self): # Issue #12687: the unpickler's buffering logic could fail with # text mode opcodes. data = list(range(10)) for proto in protocols: for buf_size in range(1, 11): f = io.BufferedRandom(io.BytesIO(), buffer_size=buf_size) pickler = self.pickler_class(f, protocol=proto) pickler.dump(data) f.seek(0) unpickler = self.unpickler_class(f) self.assertEqual(unpickler.load(), data) # Tests for dispatch_table attribute
Example #8
Source File: aws.py From tabulator-py with MIT License | 5 votes |
def load(self, source, mode='t', encoding=None): # Prepare source source = helpers.requote_uri(source) # Prepare bytes try: parts = urlparse(source, allow_fragments=False) response = self.__s3_client.get_object(Bucket=parts.netloc, Key=parts.path[1:]) # https://github.com/frictionlessdata/tabulator-py/issues/271 bytes = io.BufferedRandom(io.BytesIO()) bytes.write(response['Body'].read()) bytes.seek(0) if self.__stats: bytes = helpers.BytesStatsWrapper(bytes, self.__stats) except Exception as exception: raise exceptions.LoadingError(str(exception)) # Return bytes if mode == 'b': return bytes # Detect encoding if self.__bytes_sample_size: sample = bytes.read(self.__bytes_sample_size) bytes.seek(0) encoding = helpers.detect_encoding(sample, encoding) # Prepare chars chars = io.TextIOWrapper(bytes, encoding) return chars
Example #9
Source File: remote.py From tabulator-py with MIT License | 5 votes |
def load(self, source, mode='t', encoding=None): # Prepare source source = helpers.requote_uri(source) # Prepare bytes try: bytes = _RemoteStream(source, self.__http_session, self.__http_timeout).open() if not self.__http_stream: buffer = io.BufferedRandom(io.BytesIO()) buffer.write(bytes.read()) buffer.seek(0) bytes = buffer if self.__stats: bytes = helpers.BytesStatsWrapper(bytes, self.__stats) except IOError as exception: raise exceptions.HTTPError(str(exception)) # Return bytes if mode == 'b': return bytes # Detect encoding if self.__bytes_sample_size: sample = bytes.read(self.__bytes_sample_size)[:self.__bytes_sample_size] bytes.seek(0) encoding = helpers.detect_encoding(sample, encoding) # Prepare chars chars = io.TextIOWrapper(bytes, encoding) return chars # Internal
Example #10
Source File: test_iotools.py From pyfilesystem2 with MIT License | 5 votes |
def test_make_stream_reader_writer(self): f = io.BytesIO(b"Hello") s = iotools.make_stream("foo", f, "+b", buffering=1) self.assertIsInstance(s, io.BufferedRandom) self.assertEqual(s.read(), b"Hello") s.write(b" World") self.assertEqual(f.getvalue(), b"Hello World")
Example #11
Source File: iotools.py From pyfilesystem2 with MIT License | 4 votes |
def make_stream( name, # type: Text bin_file, # type: RawIOBase mode="r", # type: Text buffering=-1, # type: int encoding=None, # type: Optional[Text] errors=None, # type: Optional[Text] newline="", # type: Optional[Text] line_buffering=False, # type: bool **kwargs # type: Any ): # type: (...) -> IO """Take a Python 2.x binary file and return an IO Stream. """ reading = "r" in mode writing = "w" in mode appending = "a" in mode binary = "b" in mode if "+" in mode: reading = True writing = True encoding = None if binary else (encoding or "utf-8") io_object = RawWrapper(bin_file, mode=mode, name=name) # type: io.IOBase if buffering >= 0: if reading and writing: io_object = io.BufferedRandom( typing.cast(io.RawIOBase, io_object), buffering or io.DEFAULT_BUFFER_SIZE, ) elif reading: io_object = io.BufferedReader( typing.cast(io.RawIOBase, io_object), buffering or io.DEFAULT_BUFFER_SIZE, ) elif writing or appending: io_object = io.BufferedWriter( typing.cast(io.RawIOBase, io_object), buffering or io.DEFAULT_BUFFER_SIZE, ) if not binary: io_object = io.TextIOWrapper( io_object, encoding=encoding, errors=errors, newline=newline, line_buffering=line_buffering, ) return io_object