2015-11-12 3 views
2

Я пишу программу, и одним из требований является то, что данные могут быть приняты только с завершенного CD-R. Я не могу за всю жизнь понять, как выполнить эту проверку на Java. Любая помощь приветствуется!Есть ли способ проверить, завершен ли CD-R на Java?

+0

Связанный: [Как узнать, когда был записан/сгорел диск (DVD)?] (Http://superuser.com/q/559031/305088) – rpax

+1

Это не то, о чем я говорил, Мне все равно, КОГДА диск был сожжен, мне остается только проверить, завершено ли оно, чтобы данные не могли быть добавлены позднее. Спасибо за связанный псот. – jhorner13

ответ

1

Когда компакт-диск завершен, он сообщает о нулевом свободном файловом пространстве.

С Java 1.6 класс File имеет метод getFreeSpace.

Когда я пробовал этот код на своем Windows C: диске, он возвратил 403 547 947 008.

package com.ggl.testing; 

import java.io.File; 

public class GetFreeSpace { 

    public static void main(String[] args) { 
     File file = new File("C:"); 
     System.out.println(file.getFreeSpace()); 
    } 

} 

Попробуйте его на компакт-диске, и посмотреть, если он возвращает ноль или число, для завершенного CD или не завершенного CD, соответственно.

+0

Я собираюсь попробовать, я дам вам знать, как все идет! Спасибо – jhorner13

+0

К сожалению, как финализированные компакт-диски, так и неконфигурированные CDS сообщают о восстановлении дискового пространства ноль, поэтому этот метод не будет работать. – jhorner13