title: Kivy:- Load & Save does not work for pdf & word docment
body: <p>I was reading the kivy pdf file &amp; in that i found a Load &amp; Save code...That code works well for .txt file &amp; .py file but it does not work for .docx &amp; .pdf file...</p>
  
  <p>main.py:---</p>
  
  <pre><code>import kivy
  from kivy.app import App
  from kivy.uix.floatlayout import FloatLayout
  from kivy.factory import Factory
  from kivy.uix.label import Label
  from kivy.properties import ObjectProperty
  from kivy.uix.popup import Popup
  
  import os
  
  class LoadDialog(FloatLayout):
      load = ObjectProperty(None)
      cancel = ObjectProperty(None)
  
  
  class SaveDialog(FloatLayout):
      save = ObjectProperty(None)
      #text_input = ObjectProperty(None)
      cancel = ObjectProperty(None)
  
  
  class Root(FloatLayout):
      loadfile = ObjectProperty(None)
      savefile = ObjectProperty(None)
      #text_input = ObjectProperty(None)
  
      def dismiss_popup(self):
          self._popup.dismiss()
  
      def show_load(self):
          content = LoadDialog(load=self.load, cancel=self.dismiss_popup)
          print(self.load)
          self._popup = Popup(title="Load file", content=content, size_hint=(0.9, 0.9))
          self._popup.open()
  
      def show_save(self):
          content = SaveDialog(save=self.save, cancel=self.dismiss_popup)
          print(self.save)
          self._popup = Popup(title="Save file", content=content, size_hint=(0.9, 0.9))
          self._popup.open()
  
  
      def load(self, path, filename):
  
          with open(os.path.join(path, filename[0])) as stream:
  
              self.text = stream.read()
  
          self.dismiss_popup()
          self._popup = Popup(title="Load file", content=Label(text = 'File Loaded Successfully'), size_hint=(0.9, 0.9))
          self._popup.open()
  
  
  
  
      def save(self, path, filename):
  
          with open(os.path.join(path, filename), 'w') as stream:
  
              stream.write(self.text)
  
          self.dismiss_popup()
  
          self._popup = Popup(title="Save file", content=Label(text = 'File Saved Successfully'), size_hint=(0.9, 0.9))
          self._popup.open()
  
  class Editor(App):
      pass
  
  
  Factory.register('Root', cls=Root)
  Factory.register('LoadDialog', cls=LoadDialog)
  Factory.register('SaveDialog', cls=SaveDialog)
  
  if __name__ == '__main__':
      Editor().run()
  </code></pre>
  
  <p>editor.kv:---</p>
  
  <pre><code>#:kivy 1.8.0
  
  Root:
      #text_input: text_input
  
      BoxLayout:
          orientation: 'vertical'
  
          BoxLayout:
              size_hint_y: None
              height: 100
              Button:
                  text: 'Load'
                  on_release: root.show_load()
              Button:
                  text: 'Save'
                  on_release: root.show_save()
  
  
          Image:
              source: 'myimage.png'
  
  &lt;LoadDialog&gt;:
      BoxLayout:
          size: root.size
          pos: root.pos
          orientation: "vertical"
          FileChooserListView:
              id: filechooser
  
          BoxLayout:
              size_hint_y: None
              height: 100
              Button:
                  text: "Cancel"
                  on_release: root.cancel()
  
              Button:
                  text: "Load"
                  on_release: root.load(filechooser.path, filechooser.selection)
  
  &lt;SaveDialog&gt;:
      text_input: text_input
      BoxLayout:
          size: root.size
          pos: root.pos
          orientation: "vertical"
          FileChooserListView:
              id: filechooser
              on_selection: text_input.text = self.selection and self.selection[0] or ''
  
          TextInput:
              id: text_input
              size_hint_y: None
              height: 100
              multiline: False
  
          BoxLayout:
              size_hint_y: None
              height: 100
              Button:
                  text: "Cancel"
                  on_release: root.cancel()
  
              Button:
                  text: "Save"
                  on_release: root.save(filechooser.path, text_input.text)
  </code></pre>
  
  <p>Which part of the code i should modify so that it will work for all type of files...????</p>