سؤال

حاولت إرسال نسترينغ من خلال واي فاي ويعمل دون خطأ.ل نسترينغ اعتدت NSUTF8StringEncodingفي كل من دائرة الرقابة الداخلية التطبيق وجافا جانب الخادم.

الآن أريد أن أرسل نسداتا (صور) من خلال واي فاي إلى خادم جافا بلدي.انا ذاهب الى استخدام هذا الرمز لإرسال الصورة إلى خادم جافا.

NSData *newData = UIImagePNGRepresentation([UIImage imageNamed:@"Default.png"]);
    int index = 0;
    int totalLen = [newData length];
    uint8_t buffer[1024];
    uint8_t *readBytes = (uint8_t *)[newData bytes];

    while (index < totalLen) {
        if ([outputStream hasSpaceAvailable]) {
            int indexLen =  (1024>(totalLen-index))?(totalLen-index):1024;

            (void)memcpy(buffer, readBytes, indexLen);

            int written = [outputStream write:buffer maxLength:indexLen];

            if (written < 0) {
                break;
            }

            index += written;

            readBytes += written;
        }
    }

سؤالي هو, هل يمكنني قراءة نسداتا في خادم جافا?إذا لم أستطع ما هو الحل?يجب علي استخدام طريقة الترميز?وأيضا يمكن للشخص أن يعطيني نموذج جافا رمز الخادم لقراءة نسداتا أو الصور بطريقة أو بأخرى....

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

المحلول

private void saveFile(Socket socket, File receivingFile) {
        try {
            FileOutputStream wr = new FileOutputStream(receivingFile);
            byte[] buffer = new byte[socket.getReceiveBufferSize()];
            int bytesReceived = 0;

            while ((bytesReceived = socket.getInputStream().read(buffer)) > 0) {
                wr.write(buffer, 0, bytesReceived);
            }
            wr.close();
            setLogMessege("SaveFile", "File Written");
            socket.close();
        } catch (IOException e) {
            try {
                socket.close();
            } catch (IOException ex) {
                Logger.getLogger(AcceptCameraImages.class.getName()).log(Level.SEVERE, null, ex);
            }
            setLogMessege("SaveFile", e.getMessage());
        }`enter code here`
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top