هل من الممكن قراءة السطر الأول فقط من الملف باستخدام Actionscript؟

StackOverflow https://stackoverflow.com/questions/202922

سؤال

لدي موقع قائم على PHP حيث نسمح للمستخدمين بتحميل ملف نصي مفصول بفواصل من البيانات ليتم استيراده بواسطة بعض البرامج النصية من جانب الخادم.ومع ذلك، نحتاج في بعض الأحيان إلى ضبط ترتيب أعمدة البيانات التي يتم تحميلها، وسيكون من المفيد للغاية أن نتمكن من تحديد الأعمدة في ملف CSV قبل يتم التحميل.

الطريقة الوحيدة التي يمكنني التفكير فيها للوصول إلى الإدخال/الإخراج للملف المحلي هي باستخدام مكون Java الإضافي أو برنامج Flash النصي المضمن، وأنا أفضل الخيار الأخير كثيرًا.هل هناك أي طريقة في Flash لتحديد ملف نصي على محرك الأقراص الثابتة المحلي، ثم استخدام ActionScript لفحصه فقط السطر الأول (الذي يتوافق مع عناوين الأعمدة، في هذا المثال)؟

في بعض الأحيان يمكن أن يكون حجم هذه الملفات أكبر من 100 ميجابايت، لذا فإن تحميل كل شيء في الذاكرة ثم حذف كل شيء باستثناء السطر الأول ربما لن يعمل بكفاءة، لذلك أتساءل عما إذا كان هناك بناء جملة في ActionScript للحد من كمية البيانات المقروءة في الوقت.

هل كانت مفيدة؟

المحلول

لا تتمتع أفلام الفلاش بإمكانية الوصول إلى نظام الملفات المحلي، باستثناء القيام بتحميل ملف إلى الخادم.

أعتقد أن خياراتك هي:

  1. قم بمعالجة الفصل من جانب العميل باستخدام Java (تافه)، باستخدام برنامج صغير.ومع ذلك، كما تؤكد بحق، سيحتاج المستخدم إلى منح الأذونات للتطبيق الصغير.
  2. قم بتوفير تطبيق صغير من جانب العميل مكتوبًا باستخدام Adobe Air، باستخدام واجهة برمجة تطبيقات نظام الملفات.

نصائح أخرى

ألا يمكنك فقط استخدام PHP للاستيلاء على السطر الأول من ملف CSV الخاص بك ثم تغذية هذا السطر من البيانات للفلاش؟

قد أكون مخطئًا تمامًا هنا ولكن يبدو أن الشخص الذي يطرح هذا السؤال قد فعل شيئًا مشابهًا لهذا التأثير باستخدام كود PHP الخاص به

استخدام PHP لأخذ السطر الأول من ملف CSV وإنشاء جدول MySQL بالبيانات

الإصدار الحالي من مشغل Flash قادر فقط على تحديد ملف للتحميل إلى الخادم، مما يتطلب أن تكون جميع عمليات المعالجة من جانب الخادم.ومع ذلك، فإن الإصدار التالي من اللاعب، فلاش 10 يمكنه قراءة الملفات المحلية دون القيام بالرحلة ذهابًا وإيابًا إلى الخادم.

لم أستخدم هذه الوظيفة بنفسي (حتى الآن) لذا لست متأكدًا مما إذا كان من الممكن قراءة جزء فقط من الملف، ولكن هذا يصبح أقل مشكلة إذا كان كل شيء محليًا.

يوجد Flash 10 حاليًا في مرحلة تجريبية من نوع ما، ولكن سيتم طرحه قريبًا على ما أعتقد.

يحرر:قريبا في الواقع، رأيت للتو هذا في قارئ الخلاصة الخاص بي

يتيح لك Flash Player 10، الإصدار الحالي الذي تم شحنه (تم إصداره للتو منذ يومين)، إمكانية الوصول إلى الملفات المحلية.يمكنك العثور على مثال هنا:

http://www.mikechambers.com/blog/2008/08/20/reading-and-writing-local-files-in-flash-player-10/

ومع ذلك، يجب عليك تحميل الملف بأكمله.

إذا كنت تستخدم ملف SWF يعمل في Adobe AIR، فيمكنك قراءة السطر الأول فقط (يحتوي على واجهات برمجة تطبيقات ملفات أكثر تقدمًا).

ربما يكون الحل الأفضل هو إنشاء واجهة برمجة تطبيقات PHP التي تُرجع الصف الأول فقط من البيانات.

غرف مايك

Mesh@adobe.com

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top