code: def add_fileobj(self, fname, fcontent):
          
          tar_info = tarfile.TarInfo(fname)
          if isinstance(fcontent, io.BytesIO):
              tar_info.size = len(fcontent.getvalue())
          elif isinstance(fcontent, io.StringIO):
              tar_info.size = len(fcontent.getvalue())
              fcontent = io.BytesIO(fcontent.getvalue().encode("utf8"))
          else:
              if hasattr(fcontent, "readable"):
                  fcontent = fcontent
              tar_info.size = len(fcontent)
              if isinstance(fcontent, str):
                  fcontent = fcontent.encode("utf8")
              fcontent = io.BytesIO(fcontent)
          self._ios_to_add[tar_info] = fcontent
docs: add file like object, it will be add to tar file later
  
          :param fname: name in tar file
          :param fcontent: content. bytes, string, BytesIO or StringIO