0Pricing
React Academy · Ders

Dosya Girdisi ve Dosya Verilerini Okuma

öğesini işleyin, dosya meta verilerini okuyun ve FileReader ile görselleri önizleyin.

Dosya Girdisi ve Dosya Verilerini Okuma, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

Bu derste React'te dosya girdilerini yönetecek, dosya üst verilerini okuyacak, seçilen görüntüleri önizleyecek ve dosya içeriklerini işlemek için FileReader API'sini kullanacaksınız.

Dosya Girdisi Öğesi

`` öğesi React'in value prop'u tarafından denetlenemez; her zaman denetlenmeyendir. Seçilen dosyayı onChange işleyicisinde `e.target.files[0]` konumundan okuyun.
function FileInput() {
  const handleChange = (e) => {
    const file = e.target.files[0];
    console.log(file.name, file.size, file.type);
  };
  return <input type="file" onChange={handleChange} />;
}

Dosya Nesnesi Özellikleri

Bir dosya nesnesi Blob'u genişletir ve şunlara sahiptir: `name` (dosya adı), `size` (bayt), `type` ('image/png' gibi MIME türü) ve `lastModified` (zaman damgası). Bunları yüklemeden veya işlemeden önce okuyun.

Belirli Dosya Türlerini Kabul Etme

Tarayıcıya hangi dosya türlerini göstereceğini bildirmek için `accept` özniteliğini kullanın. MIME türleriyle uzantıları birleştirin. Sunucu tarafında da her zaman doğrulama yapın.
<input type="file" accept="image/png,image/jpeg,.pdf" />

Birden Fazla Dosya Seçimi

Birden fazla dosya seçilmesine izin vermek için `multiple` özniteliğini ekleyin. `e.target.files`, bir FileList döndürür; dizi yöntemlerini kullanmak için bunu `Array.from()` ile diziye dönüştürün.
<input type="file" multiple />

const files = Array.from(e.target.files);

URL.createObjectURL ile Görüntü Önizleme

Seçilen bir görüntü dosyası için `URL.createObjectURL(file)` kullanarak geçici bir önizleme URL'si oluşturun. Belleği serbest bırakmak için işiniz bittiğinde bunu `URL.revokeObjectURL` ile iptal etmeyi unutmayın.
const [preview, setPreview] = useState(null);

const handleChange = (e) => {
  const file = e.target.files[0];
  if (file) setPreview(URL.createObjectURL(file));
};

useEffect(() => {
  return () => { if (preview) URL.revokeObjectURL(preview); };
}, [preview]);

{preview && <img src={preview} alt="Preview" />}

FileReader ile Dosya İçeriklerini Okuma

Dosyanın içeriğini metin veya veri URL'si olarak okumak için `FileReader` API'sini kullanın. Metin dosyaları için `reader.readAsText(file)`, görüntüler gibi ikili dosyalar için `reader.readAsDataURL(file)` çağrısını yapın.
const reader = new FileReader();
reader.onload = (e) => setContent(e.target.result);
reader.readAsText(file);

Dosya Boyutu Doğrulaması

Yüklemeden önce dosya boyutunu istemci tarafında doğrulayın. Eşik değerinden büyük dosyaları reddedin ve bir hata mesajı gösterin.
const MAX_SIZE = 5 * 1024 * 1024; // 5 MB
if (file.size > MAX_SIZE) {
  setError('File must be under 5 MB');
  return;
}

Dosya Girdisini Temizleme

Bir dosya girdisini değerini ayarlayarak temizleyemezsiniz; bu değer salt okunurdur. Bunun yerine girdiyi bir başvuru aracılığıyla doğrudan sıfırlayın veya yeniden oluşturmayı zorlamak için girdinin `key` prop'unu değiştirin.
const inputRef = useRef();
const clear = () => { inputRef.current.value = ''; };
<input ref={inputRef} type="file" />

Dosya Başvurularını Durumda Saklama

Durumda yalnızca adını veya URL'sini değil, File nesnesinin kendisini saklayın. Böylece dosyayı daha sonra DOM'dan yeniden okumadan yükleyebilirsiniz.
const [file, setFile] = useState(null);
const handleChange = (e) => setFile(e.target.files[0] || null);

Hızlı Kontrol

Tarayıcıda seçilen bir görüntü dosyasını önizlemek için geçici bir URL'yi hangi yöntem oluşturur?

Özet

Seçilen dosyaları e.target.files konumundan okuyun. Önizlemeler için URL.createObjectURL, içerikleri okumak için FileReader kullanın, boyutu istemci tarafında doğrulayın ve daha sonra yüklemek üzere File nesnesini durumda saklayın.

Sırada

Sıradaki ders: **Dosya Yükleme Arayüzünde Sürükleyip Bırakma** — React olaylarını kullanarak görsel geri bildirim içeren bir sürükleyip bırakma alanı oluşturacaksınız.

Sıkça Sorulan Sorular

“Dosya Girdisi ve Dosya Verilerini Okuma” dersi ücretsiz mi?

Evet — “Dosya Girdisi ve Dosya Verilerini Okuma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.

“Dosya Girdisi ve Dosya Verilerini Okuma” dersinde ne öğreneceğim?

öğesini işleyin, dosya meta verilerini okuyun ve FileReader ile görselleri önizleyin. React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

React Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Dosya Girdisi ve Dosya Verilerini Okuma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu React Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. useRef ile Denetimsiz Girdiler
  2. Dosya Girdisi ve Dosya Verilerini Okuma
  3. Sürükleyip Bırakarak Dosya Yükleme Arayüzü
  4. Dosyaları Backend API'sine Yükleme
← React Academy Sayfasına Dön