2016-03-22 22 views
3

Ben yazarken Say,Bir akış nesnesi oluşturulurken dosyaya bir bağlantı açtığımızda ne olur?

InputStream inStream = new FileInputStream("LOCATION"); 

Peki new FileInputStream("LOCATION") bölümü ile olur?

Web üzerinde, bu konumla bağlantı açtığını belirten materyaller okurum. tarafından "bir bağlantı açıldığında", "LOCATION"'dan tüm verilerin inStream içine getirdiğini varsayalım mı?

Ve tüm verileri getirmiyorsa ne yapar?

+0

io akışı, kaynağın ardışık okunmasına/yazılmasına izin veren bir soyutlamadır –

cevap

3

Hayır, kesinlikle değil. Verileri okumanızı sağlayan bir kanal açar. Ama gerçek okuma yapmadığınız sürece, herhangi bir veri getirmez. Bir Akış açtığınızda, onu kapatmanız gerektiğini unutmayın. Aksi halde bir bellek sızıntısı oluşabilir. Bu nedenle, genellikle açılış akışınızı genellikle

+0

Teşekkürler! Bu yardımcı oldu. –

2

numaralı dosyada kapatabilirsiniz. Bu, yalnızca bu konumdaki dosyaya bir bağlantı oluşturur.

Herhangi bir veri almak için verileri paketlerde alan okuma yöntemini çağırmanız gerekir.